- Node v22+
- pnpm
- Install Node v22 or newer
- Install pnpm globally:
npm i -g pnpm - Install the project dependencies:
pnpm i - Create a
.envfile in the root of the project directory that matches the format of.env.example- Add your Lokalise API key
- If your SEED instance is running at a location other than
http://127.0.0.1:8000, setSEED_HOSTin the.envfile
- Run
pnpm start - Browse to localhost:4200
The Angular development server proxies /api/ and /media/ requests to Django. By default it expects Django at http://127.0.0.1:8000.
- Start Django in one terminal
- Run
pnpm watchin this directory - Browse to localhost:8000/ng-app/
Use pnpm watch while actively developing:
- Keeps running
- Rebuilds automatically on file save
- Best for local UI changes
Use pnpm build when you only need a one-time output:
- Runs once and exits
- Does not rebuild automatically
- Best for quick verification or production-like builds
Both commands write Angular output under ../../collected_static/ng-app.
The Django /ng-app/ route serves those files; it does not start the Angular development server.
If Django returns this error:
Page not found (404)
seed-angular static files not found
follow this checklist:
- In
ng_seed/seed-angular, runpnpm watch(recommended for dev) orpnpm build. - Confirm Angular output exists under
../../collected_static/ng-app. - If your output is under
../../collected_static/ng-app/browser/index.html(instead of../../collected_static/ng-app/index.html) and Django still shows 404, your backend static-file lookup may only be checking the non-browserpath. - If that happens, use the current backend static-file convention in your branch or update the backend lookup to support the
browsersubdirectory.
Tip: for everyday development through Django, keep pnpm watch running in a dedicated terminal.
- Run
pnpm lint, orpnpm lint:fixto automatically fix issues
- Run
pnpm update-translations
Refer to DEVELOPER.md for all coding standards and guidelines.