Contributing
See the full CONTRIBUTING.md on GitHub for the complete guide. Here’s the quick version:
Adding an atom
- Create
src/atoms/<name>.ts - Export a function that returns
Step - Add JSDoc with usage examples
- Export from
src/atoms/index.ts - Re-export from
src/index.ts - Add tests
Adding a scenario
- Create
src/scenarios/<kebab-name>.tsusingdefineScenario - Create
src/scenarios/<kebab-name>.test.tsverifying all contracts - Register in
src/scenarios/index.ts - Re-export from
src/index.ts
Running locally
git clone https://github.com/gfargo/git-scenarios.gitcd git-scenariosnpm installnpm test # run all testsnpm run build # compile with tsupnpm run lint # eslintPR checklist
- New atoms have JSDoc with examples
- New scenarios have co-located tests
- Exports added to barrel files
-
npm run buildpasses -
npm testpasses -
npm run lintpasses - CHANGELOG.md updated