Static site builder with built-in quality assurance — link validation, image optimization, and HTML/accessibility checks — using Tailwind CSS, vanilla JS, and markuplint.
See the root README for commands and deployment.
[Demo]
- Develop —
bun run devservespublic/at http://localhost:3000 with live reload. Edit the HTML/CSS directly. - Size images while coding (optional) —
bun run add-size-to-imgbulk-addswidth/heightto every<img>for better Core Web Vitals. - Validate —
bun run testconfirms internalhref/srcpaths resolve and tracks external links (see Quality Assurance);bun run lintruns markuplint andbun run formatapplies Prettier. These also run on commit via husky. Ifbun run testfails because links changed on purpose, runbun run test:updateand review thetests/external-links.txtdiff. - Clean up images —
bun run clean-imagesremoves images underpublic/images/that nothing references. It usesgit rm, so removals are staged and recoverable;bun run clean-images --dry-runpreviews without deleting. - Deploy —
bun run buildcompiles Tailwind, thenbun run deployuploadspublic/to your server with rsync (DEPLOY_TARGET— point it at staging or production).
tests/external-links.txt tracks every external URL found in the HTML files. bun run test fails when the current set diverges from this snapshot, so link changes are reviewed deliberately rather than slipping in unnoticed:
- When URLs change, run
bun run test:updateto regenerate the snapshot - Review the
tests/external-links.txtdiff - Commit it alongside the content change
bun run add-size-to-imgaddswidth/heightto<img>tags for better Core Web Vitalsbun run clean-imagesremoves images underpublic/images/that nothing references;bun run clean-images --dry-runpreviews the removals first
bun run lint runs markuplint to enforce semantic HTML, accessibility compliance, and SEO best practices.