Marketing site for Hoverkraft, built with Astro 5 and Tailwind CSS. The production code lives under application/ and is packaged for deployment as a static site.
- Node.js 18.17+ (or 20.3+/21+)
- npm 9+
- Docker (optional, used by linting workflow)
make prepare # Install npm dependencies in application/
make start # Run Astro dev server on http://localhost:4321To preview a production build locally:
make build
npm run preview --prefix applicationmake lint– Run Prettier and Astro checks (accepts globs:make lint src/pages)make lint-fix– Apply automated fixes via npm audit + Dockerized lintermake build– Runastro checkand produce a production buildmake ci– Run prepare, lint, and build sequentiallynpm run preview --prefix application– Serve the built site for QA
Most changes should happen inside application/. See AGENTS.md for detailed automation guardrails.
application/astro.config.ts– Astro configuration, integrations, and Partytown setupapplication/src/config.yaml– Site metadata, feature toggles, and analytics IDsapplication/src/i18n/ui.ts– Shared UI strings forfr(default) andenlocalesapplication/src/assets/images– Optimized assets consumed via the sharedImagecomponentapplication/src/content/andapplication/src/data/– Blog posts and data-driven content
- Keep locale strings synchronized in
application/src/i18n/ui.ts - Update metadata and analytics via
application/src/config.yamlinstead of hardcoding values - Follow the frontmatter schema in
application/src/content/config.tswhen adding content
Contributions, issues, and feature requests are welcome. Review the contributing guide and use the issue tracker to report bugs or request features.
This project is released under the 0BSD License.