Thank you for your interest in contributing! This guide will help you get started.
- Node.js 18.x or 20.x
- npm
- Angular CLI
- Fork the repository on GitHub
- Clone your fork locally:
git clone https://github.com/<your-username>/ngrx-devtool.git cd ngrx-devtool
- Install dependencies:
npm install
ng serve ngrx-devtool-demonpm run buildTo test your changes in a real Angular project, use npm link:
# Build the library
npm run build
# Link it globally
cd dist/ngrx-devtool
npm link
# In your Angular project directory
npm link @amadeus-it-group/ngrx-devtoolThen start the DevTool server:
# From the ngrx-devtool directory
node dist/index.jsNote: If you get module resolution errors after linking, add
"preserveSymlinks": truein bothtsconfig.json(compilerOptions) andangular.json(buildoptions) of your Angular project. After runningnpm install, you may need to re-runnpm link @amadeus-it-group/ngrx-devtool.
npm test # Run tests once
npm run test:watch # Run tests in watch mode
npm run test:coverage # Run tests with coverage reportnpm run lint # Check for lint errors
npm run lint:fix # Auto-fix lint errorsUse descriptive branch names:
feat/description— for new featuresfix/description— for bug fixesdocs/description— for documentation changesrefactor/description— for code refactoringtest/description— for adding or updating tests
This project uses Conventional Commits. Commit messages are validated by commitlint.
Format: type(scope): description
Examples:
feat(core): add selector tracking support
fix(effects): correct lifecycle event ordering
docs(readme): update installation instructions
test(store): add unit tests for meta reducer
Types: feat, fix, docs, style, refactor, perf, test, build, ci, chore
- Create a feature branch from
master - Make your changes
- Ensure all tests pass:
npm test - Ensure linting passes:
npm run lint - Push your branch and open a pull request against
master - CI will automatically run lint and tests — both must pass before merging
- All new code must include unit tests
- Existing tests must continue to pass
- Code must pass linting without errors
- Keep pull requests focused — one feature or fix per PR
| Directory | Description |
|---|---|
projects/ngrx-devtool/ |
Core library package |
projects/ngrx-devtool-ui/ |
Standalone visualization UI |
projects/ngrx-devtool-demo/ |
Example implementation |
docs/ |
Docusaurus documentation site |
- Use the bug report template for bugs
- Use the feature request template for new ideas
This project follows the Contributor Covenant Code of Conduct. Please be respectful and constructive in all interactions.
If you have questions about contributing, open an issue and we'll be happy to help.