Project by HivarSoft
Thank you for your interest in contributing! This document explains how to get involved.
Be respectful, inclusive, and constructive. We follow the Contributor Covenant standard.
Open an issue and include:
- A clear description of the problem
- Steps to reproduce
- Expected vs. actual behaviour
- Browser + OS info
Open an issue tagged enhancement. Describe the use case and why it would benefit other users.
- Fork the repository and create a branch from
main:git checkout -b feat/my-feature
- Make your changes, keeping commits focused and descriptive.
- Ensure the project builds without errors:
npm run build npm run type-check
- Push your branch and open a PR against
main. - Fill in the PR template — describe what changed and why.
cd web
npm install
npm run dev- TypeScript strict mode is enabled — no
anyunless unavoidable and documented. - Chakra UI semantic tokens (
bg.surface,text.primary, etc.) must be used instead of hard-coded colors. - Components live in
src/components/(shared) orsrc/pages/(route-level). - Keep components focused. If a component exceeds ~200 lines, consider splitting it.
- Use named exports for all components.
Follow Conventional Commits:
feat: add timezone heatmap to Activity page
fix: correct line count calculation in Files page
docs: update README with API integration guide
chore: upgrade Recharts to v2.12
Releases are managed by maintainers using semantic versioning. Contributors should not bump package.json versions in PRs.