Thank you for your interest in contributing to StatsCode!
# Clone the repository
git clone https://github.com/statscode/statscode.git
cd statscode
# Install dependencies
npm install
# Build all packages
npm run build
# Run tests
npm test
# Run the website locally
cd packages/web && npm run devstatscode/
├── packages/
│ ├── core/ # Core tracking library
│ ├── badges/ # Badge system
│ ├── plugin-*/ # Tool-specific plugins
│ └── web/ # Next.js website
├── docs/ # Documentation
└── examples/ # Usage examples
- Use TypeScript for all code
- Follow existing patterns in the codebase
- Write tests for new features
- Keep functions small and focused
- Fork the repository
- Create a feature branch (
git checkout -b feature/your-feature) - Make your changes
- Run tests (
npm test) - Commit with a descriptive message
- Push to your fork
- Open a Pull Request
Each package should have:
src/directory for source codesrc/index.tsas the main entry pointpackage.jsonwith proper metadatatsconfig.jsonextending root config- Unit tests in
__tests__/directory
Use conventional commits:
feat:New featurefix:Bug fixdocs:Documentationtest:Testsrefactor:Code refactoring
Open an issue or discussion on GitHub.