Run make build to:
- Install dependencies (
npm install). - Optimize images (
src/images->assets/images). - Generate HTML pages (
build.py).
Run make clean to remove generated files.
build.py: Main Python script. Reads templates/data and generates.htmfiles.Makefile: Orchestrates the build pipeline.
data/people.json: Source of truth for the "People" page.data/initiatives.json: Source of truth for the "Initiatives" page and sidebar.templates/: HTML fragments (e.g.,person_block.html,initiative_page.html).content/: HTML content for static pages (e.g.,about.html).content/initiatives/: HTML content for individual initiative pages.
src/images/: Source for images. Add new images here.assets/: Destination for compiled assets (CSS, JS, optimized images). Do not edit images here directly.scripts/copyOptimizeImages.js: Node.js script usingsharpto optimize and copy images fromsrctoassets.
*.htm: Generated main pages (e.g.,index.htm,Initiatives.htm).initiatives/: Generated individual initiative pages.
- Update Content:
- Edit
data/people.jsonfor people. - Edit
data/initiatives.jsonand files incontent/initiatives/for initiatives. - Edit files in
content/for other static pages.
- Edit
- Update Design: Edit
templates/*.htmlorassets/css/. - Add Images: Place in
src/images/. - Build: Run
make build. - Deploy: Commit and push generated files.