- Overview
- How to Generate Documentation
- Documentation Coverage Requirements
- Pre-commit Enforcement via Husky
- CI/CD Enforcement
- Tips for Passing Coverage
- Output Directory
- Need Help?
This project uses Compodoc to generate and enforce documentation for all Angular code. Documentation is mandatory and must meet a 100% coverage threshold to ensure consistent API clarity across the codebase.
To generate and view the documentation locally:
npm run docsThis will:
- Build the Compodoc documentation.
- Launch a local web server to view it (typically on http://localhost:8080).
- 100% Compodoc coverage is required across all services, components, models, and utilities.
- All public methods, properties, and classes must be documented using proper JSDoc style comments.
- Coverage checks are enforced before every commit and during CI/CD via GitHub Actions.
Husky is configured to run a pre-commit hook that will:
- Run Compodoc.
- Check coverage.
- Block the commit if documentation coverage is below 100%.
If the hook fails, you’ll see output indicating which files or symbols are undocumented.
During pull requests and merges, GitHub Actions re-validates documentation coverage.
Any PR that does not meet the 100% documentation requirement will be blocked from merging until resolved.
- Use
@Input,@Output, and@Injectableannotations with proper descriptions. - Document every exported interface, function, method, and variable.
- Use the
@exampletag for complex methods when helpful. - Apply JSDoc on constructor-injected properties using
@param.
By default, generated documentation lives in:
/documentation/
This folder is not committed to the repo and is only used locally or in build pipelines.
Run the following to see detailed CLI options:
npx compodoc --helpOr visit: https://compodoc.app