Landing page, documentation, and account control panel for Fluxa, built with Astro and deployed to GitHub Pages.
src/content/docs/ documentation pages (Markdown), one directory per language
src/content/home/ docs landing page copy, one file per language
src/i18n/ interface strings and the locale list
src/pages/ landing page, docs home, account panel, search index endpoint
src/components/ topbar, sidebar, on-this-page rail
src/layouts/ docs page shell
src/plugins/ Markdown directives for callouts, FAQ blocks, card grids
public/ static assets, stylesheets, account panel scripts
The sidebar, search index, previous/next links, and "Updated" dates are all derived from the Markdown files at build time. There is no list of pages to keep in sync by hand.
npm install
npm run dev # local server with live reload
npm run build # static output in dist/
npm run preview # serve the built output
npm run translations # per-language coverage and stale-translation reportSee CONTRIBUTING.md. In short: every page is a Markdown file in
src/content/docs/en/, and adding one is enough for it to appear in the sidebar and in search.
Translations go in src/content/docs/<locale>/ under the same file name. English is the source language;
any page without a translation falls back to English and is marked in the sidebar, so a language can be
started without translating everything at once.
Pushing to master triggers .github/workflows/deploy.yml, which builds the site and publishes it to
GitHub Pages. The workflow checks out full history because the "Updated" date on each page comes from
git log.
The site is configured for a project page at /fluxa-docs-web. If you move it to a custom domain,
drop base from astro.config.mjs and delete the fallback in src/plugins/remark-fluxa.mjs.