Contributing
Guidelines for contributing to JSX-email
Guidelines
We 💛 contributions! Please follow these basic rules:
- Be respectful and professional
- Search existing issues before creating new ones
- Test and lint code locally before submitting
- Follow the project’s code style
Repository Setup
JSX-email uses a Monorepo structure with:
Prerequisites
- Node.js v18.0.0 or higher (NVM recommended)
- Basic familiarity with React
Development Setup
-
Bootstrap your environment:
Terminal window ./shared/bootstrap.sh -
Install dependencies:
Terminal window pnpm install -
Build all packages:
Terminal window moon repo:build.all
Development Workflow
Before Committing
-
Lint your changes:
Terminal window moon run repo:lint -
Run tests:
Terminal window moon run repo:test -
Fix any errors or warnings before committing
Pull Requests
Submission Guidelines
-
Template Usage
- Fill in the PR template completely
- Don’t modify the template format
-
Description
- Explain what the code does
- Provide steps to test/execute
- Include relevant test cases
-
Quality Checks
- Ensure all tests pass
- Fix any lint errors
- Resolve failing checks
-
Issue Resolution
- Link related issues using “resolves #[issue number]”
- Example: “resolves #23”
Review Process
For faster reviews:
- Break large changes into smaller PRs
- Provide clear context and motivation
- Explain why the change matters
- Link to relevant issues or discussions