How to Contribute
Thank you for your interest in contributing to Serverless Monolith!
Getting Started
- Fork the repository on GitHub
- Clone your fork locally
- Set up the development environment
- Create a branch for your changes
- Make your changes
- Submit a pull request
Development Setup
# Clone the repository
git clone https://github.com/your-username/serverless-monolith.git
cd serverless-monolith
# Install dependencies
pnpm install
# Build all packages
pnpm build
# Run tests
pnpm test
Types of Contributions
Bug Reports
- Use the GitHub issue tracker
- Include reproduction steps
- Provide environment details
- Include relevant logs
Feature Requests
- Check existing issues first
- Describe the use case
- Explain the proposed solution
Code Contributions
- Find an issue to work on (or create one)
- Comment on the issue to claim it
- Create a branch:
feat/my-featureorfix/my-fix - Make your changes
- Write/update tests
- Update documentation
- Submit a pull request
Documentation
- Fix typos and errors
- Improve clarity
- Add examples
- Translate content
Pull Request Process
Before Submitting
- Run all tests:
pnpm test - Run linting:
pnpm lint - Run type checking:
pnpm type-check - Create a changeset:
pnpm changeset
PR Guidelines
- Use a clear, descriptive title
- Reference related issues
- Include a description of changes
- Add screenshots for UI changes
- Ensure CI passes
Changeset
For any user-facing changes, create a changeset:
pnpm changeset
Select the packages affected and describe the changes.
Code Style
- Use TypeScript
- Follow existing code patterns
- Write meaningful comments
- Use descriptive variable names
Commit Messages
Follow conventional commits:
feat: add new feature
fix: fix bug in X
docs: update documentation
chore: update dependencies
refactor: refactor X component
test: add tests for Y
Questions?
- Open a GitHub discussion
- Check existing issues
- Read the documentation
Thank you for contributing!