Contributing
We love your input! We want to make contributing to the starter kit as easy and transparent as possible, whether it's:
- Reporting a bug
- Discussing the current state of the code
- Submitting a fix
- Proposing new features
- Improving documentation
Development Process
We use GitHub to host code, to track issues and feature requests, as well as accept pull requests.
- Fork the repo and create your branch from
main
- Set up your development environment (see below)
- Make your changes
- Test your changes
- Submit a pull request
Setting Up Development Environment
# Clone your fork
git clone https://github.com/YOUR_USERNAME/starter-kit.git
# Install dependencies
pnpm install
# Set up environment variables
cp .env.example .env.local
# Start development server
pnpm dev
Contributing Guidelines
Creating Issues
-
For New Features:
- Create an issue with the
suggestion
label - Provide detailed description and use cases
- Mention if you'd like to implement it yourself
- Wait for approval before starting development
- Create an issue with the
-
For Bug Fixes:
- Check existing issues with
bug
label - Look for
good first issue
label for beginner-friendly tasks - Comment on the issue to indicate you're working on it
- Check existing issues with
Making Changes
-
Code Contributions:
- Create a new branch for your feature/fix
- Follow existing code style
- Add tests where applicable
- Update documentation if needed
-
Documentation:
- Located in
docs/
directory - Follow existing documentation structure
- Include code examples where relevant
- Located in
Commit Messages
We follow Conventional Commits specification:
feat: add new email template
fix: correct authentication redirect
docs: update contributing guidelines
style: format code according to style guide
refactor: restructure email sending logic
test: add tests for auth middleware
Pull Request Process
- Update the README.md with details of changes if needed
- Update the documentation if you're introducing new features
- Make sure all tests pass
- Link any relevant issues in your PR description
Types of Contributions
🐛 Bug Fixes
- Look for issues labeled
bug
orhelp wanted
- Comment on the issue to avoid duplicate work
- Include test cases that demonstrate the fix
✨ New Features
- Create an issue first
- Use the
suggestion
label - Wait for approval
- Mention your interest in implementing it
📚 Documentation
- One of the most valuable contributions!
- Fix typos, clarify explanations
- Add examples and use cases
- Improve API documentation
🧪 Testing
- Add tests for uncovered code
- Improve existing tests
- Add integration tests
Best Practices
- Create Issues First: For non-trivial changes
- Test Your Code: Ensure all tests pass
- Document Changes: Update relevant documentation
- Clear PRs: Keep changes focused and well-documented
- Communicate: Discuss major changes in issues first
tip
Looking for something to work on? Check out issues labeled good first issue
or help wanted
!
info
Questions? Feel free to open a discussion on GitHub!