Skip to content

Documentation Localization

Clawdie localizes documentation in two layers:

  • authored source files in the git repo
  • translated pages pulled from Crowdin and rendered by the shared Astro/Starlight docs project

This section describes the current workflow, not the older standalone astro-docs setup.

  • English source docs live in docs/public/
  • additional locales can live under docs/public/<lang>/
  • English is currently the default live docs locale for simplicity

The live docs site is built from the Astro project at:

  • repo source: bootstrap/cms/clawdie-site/
  • cms jail runtime path: /usr/home/<tenant>/<tenant>-site/
1. Edit docs/public/*.md on the host
2. Push source strings to Crowdin
3. Translators work in Crowdin
4. Pull translated markdown back into docs/public/<lang>/
5. Run npm run deploy inside the cms jail Astro project
6. docs.clawdie.si serves the new static output

Crowdin manages translation strings and translated markdown content.

It does not:

  • deploy the docs site
  • build Astro output
  • write directly into the live webroot

The shared Astro/Starlight docs project:

  • reads canonical markdown from docs/public/
  • syncs that content into the docs content tree
  • builds locale-aware static pages
  • deploys into the cms jail webroot

The current supported docs deploy flow is:

Terminal window
cd /usr/home/<tenant>/<tenant>-site
npm run deploy

That deploy path runs the content sync and Astro build steps before publishing the result.

For the complete operator workflow, see Docs and tenant-site publishing.

Use this section when you need to:

  • understand where translations belong in git
  • push source strings to Crowdin
  • pull translated content back into the repo
  • troubleshoot localization-specific build issues

Do not use older instructions that assume:

  • /home/clawdie/astro-docs/
  • direct cp or rsync into a host webroot
  • a separate standalone Astro deployment outside the cms jail