-
Notifications
You must be signed in to change notification settings - Fork 0
Team Standards for Development
Owner(s): CrowdPM team | Last updated: 2026-03-08 | Status: Production
This page captures the minimum engineering standards contributors should follow when working on CrowdPM Platform.
- Use the documented toolchain versions as closely as practical.
- Use the emulator-first workflow for normal feature work.
- Keep local secrets out of version control.
- Do not use the local/demo Firebase alias as a real deployment target.
- Make changes in reviewable increments.
- Keep infrastructure/config changes visible in the pull request description.
- When route names, claims, or env vars change, update docs in the same change set.
At minimum, run:
pnpm lint
pnpm -r buildAlso run targeted tests when changing backend logic, frontend rendering behavior, or auth/pairing code.
If ingest behavior changes, also run the smoke test.
The local smoke test is a primary regression check, not merely a presentation gimmick.
Contributors changing any of the following should run it:
- pairing flow;
- token or DPoP validation;
- ingest gateway;
- batch processor;
- map rendering path;
- dashboard smoke-test UI.
Documentation is part of the deliverable.
When behavior changes, update the relevant layers:
- source implementation;
- README or
/docsrunbook; - wiki page(s).
Required especially for changes to:
- env variables;
- setup prerequisites;
- route families;
- role terminology;
- deployment process;
- demo flow.
Use the real role names consistently:
- guest
- authenticated user / device owner
- moderator
- super admin
Avoid replacing this with vague wording that hides actual permission boundaries.
Never commit:
.env.local.secret.local- private keys
- downloaded service-account JSON files
Treat project targeting, secrets, and deployment context as deliberate release steps, not routine development defaults.
Before any demo or deploy:
- verify the environment being targeted;
- verify
VITE_API_BASEand Firebase context; - verify whether the audience expects local, demo, or production behavior;
- verify whether public/moderation boundaries are part of the presentation.
A change is not truly complete if the next contributor cannot:
- run it locally;
- understand the role model;
- repeat the smoke test;
- locate the relevant docs.
Owner: CrowdPM Team
Last updated: 2026-03-08
Status: Production
Single sources of truth (links only)
- Production Website: crowdpmplatform.web.app
- Requirements doc: Requirements Doc
- Design doc: Design Doc
- Project board: Project board
- CI dashboard: CI Dashboard
- Release artifacts: Release Artifacts
- Repo: GitHub