Thank you for considering contributing to this project! This document provides guidelines for contributing.
- Fork the repository
- Clone your fork:
git clone https://github.com/YOUR_USERNAME/oura-cf.git - Install dependencies:
npm install - Create a feature branch:
git checkout -b feature/your-feature-name
# Start local dev server
npx wrangler dev
# Run type checking
npx tsc --noEmit
# Run tests
npm test- Use TypeScript with strict mode enabled
- Follow existing code patterns (tabs for indentation)
- Use descriptive variable names
- Add comments for complex logic
- Prefer explicit types over
any
Use conventional commit format:
feat: add new feature
fix: resolve bug
docs: update documentation
chore: update dependencies
perf: improve performance
refactor: restructure code
test: add tests
- Update CHANGELOG.md with your changes (under
[Unreleased]section) - Ensure code compiles without errors:
npx wrangler deploy --dry-run - Test locally with
npx wrangler dev - Create pull request with clear description
- Link any related issues
- Bug fixes - Always welcome
- Performance improvements - Show benchmarks
- Documentation - Clarifications, examples, corrections
- New features - Open an issue first to discuss
- All contributions require review
- Maintain backward compatibility
- Keep changes focused and atomic
- Respond to feedback constructively
While comprehensive tests are not yet implemented, consider adding tests for:
- Data transformation logic (
saveToD1functions) - OAuth token handling
- SQL validation (
isReadOnlySql) - Rate limiting logic
Open an issue for discussion before starting major work.