Static site for Qaid Jacobs. Stack: HTML, CSS, vanilla JS. Package manager: Bun. Deployment target: GitHub Pages.
Requirements: Bun >= 1.0
Install dependencies (none yet, but locks engine):
bun installBuild the site:
bun run buildThis compiles TypeScript sources and generates the manifest.
Run a local server:
bun run devThis builds the site and serves it on http://localhost:3000.
index.html— landing scaffoldcss/— variables, base styles, landing stylesjs/— main init, landing placeholder logiccontent/— placeholder for JSON content (nodes, curiosities, connections, phrases)assets/— images/audio/logoscms/— local-only CMS (not deployed)
The CMS is a local-only tool for managing site content. It runs separately from the main site.
Start the CMS server:
bun run cms:devAccess the CMS at http://localhost:3001/cms.html
bun run dev:allThis starts:
- Main site on
http://localhost:3000 - CMS on
http://localhost:3001
- Start the CMS:
bun run cms:dev - Open
http://localhost:3001/cms.htmlin your browser - Edit content through the UI (nodes, essays, curiosities, phrases, connections)
- Changes are automatically saved to the
content/directory - Commit and push changes to deploy to GitHub Pages
# Edit content via CMS UI
# Then commit and push:
git add content/
git commit -m "Update content"
git push origin main
# GitHub Actions will automatically build and deployThe site deploys automatically to GitHub Pages when you push to the main branch.
- Live site: https://qaidjacobs.com
- GitHub Pages: Configured with custom domain
- Build process: GitHub Actions workflow (
.github/workflows/deploy.yml) - Deploy time: 2-5 minutes after push
- The
/cms/directory is local-only and excluded from public deployment - All content is stored in JSON files in the
content/directory - TypeScript sources are in
src/, compiled output injs/