Thanks for your interest in contributing!
- Check if the issue already exists
- Provide clear steps to reproduce bugs
- Include version numbers or git commit hashes, and environment details
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Make your changes
- Run tests:
npm test - Ensure code follows existing style
- Commit with clear messages
- Push to your fork
- Open a Pull Request
npm install
npm test
npm run devSee README.md for more details.
Releases are automated via GitHub Actions:
- Update version in
package.json(follow semantic versioning) - Commit the version change
- Create and push a git tag:
git tag -a v0.2.0 -m "Release v0.2.0" git push origin v0.2.0 - GitHub Actions will automatically:
- Run tests
- Build the application
- Create a GitHub release with build artifacts
- Build and push Docker images to
ghcr.io/cdanis/odette - Tag Docker images with the version number (and
latestfor stable releases only)
Release artifacts include a compressed tarball with the built application files.
- Use TypeScript
- Err towards being minimal
- Follow existing patterns in the codebase
- Add tests for new features
- Update documentation as needed
By contributing, you agree that your contributions will be licensed under the AGPL-3.0 license.