FaasJS Project Workflow
Default Workflow
- Read the project config and file layout before adding or moving files.
- Keep features as vertical slices with UI, API, database changes, and tests close together.
- Follow existing
tsconfig.jsonaliases and Vite/Vitest configuration; do not invent new aliases without matching runtime config. - Place tests in
__tests__/inside the feature or package area they protect. - Use public JSDoc only for package entrypoints or shared exports with non-obvious caller contracts.
Load These References
- New project setup or onboarding:
references/guidelines/getting-started.md. - Supported stack and framework boundaries:
references/guidelines/curated-stack.md. - Complete vertical feature layout:
references/guidelines/application-slices.md. - File placement and extraction rules:
references/guidelines/file-conventions.md. - TypeScript, Vite, and shared tooling config:
references/guidelines/project-config.md. - CLI commands, type generation, migrations, test commands, and environment variables:
references/guidelines/cli-and-tooling.md. - Identifier, file, and directory names:
references/guidelines/naming-convention.md. - JSDoc and inline comment policy:
references/guidelines/code-comments.md. - Shared test-level and mock-boundary rules:
references/guidelines/testing.md.
Gotchas
- Tests, fixtures, and mocks belong under the relevant
__tests__/directory, not as siblings. - Extract components, hooks, helpers, or abstractions only for reuse, real boundaries, or large bodies.
- Do not add comments to untouched code; delete confirmed-dead code instead of leaving markers.
- Regenerate derived docs from source rather than editing generated docs directly.
Validation
- Run
vp check --fixafter code or docs source edits when feasible. - Run
vp testor a focusedvp test <pattern>for behavior changes. - Run
npm run docwhen guides, source docs, API JSDoc, or docs navigation are affected.