Thank you for your interest in contributing! Here are some guidelines to help you get started.
- Fork the repository
- Clone your fork
- Install dependencies:
npm install - Copy
.env.exampleto.env.localand configure - Run
npx prisma db pushto set up the database - Start the dev server:
npm run dev
- TypeScript: All code must be strongly typed. No
anytypes. - Linting: Run
npm run lintbefore committing - Components: Use shadcn/ui primitives when possible
- Styling: Use TailwindCSS utility classes
- State: Use Zustand for global state, TanStack Query for server state
- Validation: Use Zod for all input validation
- Testing: Write tests for new features when applicable
- Create a feature branch from
main - Make your changes
- Ensure all checks pass
- Submit a pull request with a clear description
- Wait for review
Use clear, descriptive commit messages:
feat: add bulk promotion supportfix: resolve member pagination issuedocs: update API documentationrefactor: simplify audit log queries
When reporting issues, please include:
- Steps to reproduce
- Expected behavior
- Actual behavior
- Browser/OS information
- Screenshots if applicable
Be respectful and constructive. We're building something great together.