Developer"s Guide | Travelogue
_Common
All projects are hosted on GitHub and they utilise GitHub Actions workflows as build pipelines.
They are versioned using Semantic Versioning scheme, and the changelog uses Keep a Changelog format.
Each single build run involves running lint check, complexity check, unit tests, coverage check, integration tests, and documentation generation.
_node.js
node projects use Bob as the build tool.
The codebases were generated using Generator-node.
Build Steps
| Step | Command | Tool | Notes |
|---|---|---|---|
| Lint | bob lint | ESLint | Must pass without error. |
| Complexity | bob complexity | plato | Aim for maintainability score greater than 65. |
| Unit Tests | bob test | Mocha | Each set of changes should involve either a new or modified unit tests. Must pass without error. |
| Coverage | bob coverage | c8 | Must have 100% test coverage. |
| Integration Tests | bob test-integration | Mocha, cmdt | Must pass without error. |
| API Documentation | bob doc | JSDoc | Ensure sufficient code comments. |
Step By Step Guide
- Install Bob:
npm install -g bob - Fork the repository
- Make the code changes (logic, testing, documentation)
- Run the full build:
bob build - Rinse and repeat until the full build passes
- Add a note to CHANGELOG.md
- Commit, push, and create pull request