Last updated
Contributing.md Generator Examples
The Contributing.md Generator creates a complete CONTRIBUTING.md file for your open source project. Below are examples of the sections it generates and what they look like for different project types.
Basic Node.js Project — Getting Started Section
## Getting Started
Thank you for considering contributing to **my-project**!
### Prerequisites
- Node.js 18 or higher
- npm 9 or higher
- Git
### Setup
1. Fork the repository on GitHub
2. Clone your fork locally:
```bash
git clone https://github.com/your-username/my-project.git
cd my-project
```
3. Install dependencies:
```bash
npm install
```
4. Copy the example environment file:
```bash
cp .env.example .env
```
5. Start the development server:
```bash
npm run dev
```
Contribution Workflow Section
## Contribution Workflow
1. Create a new branch from `main`:
```bash
git checkout -b feat/your-feature-name
```
2. Make your changes and commit using Conventional Commits:
```
feat: add user authentication
fix: resolve null pointer in parser
docs: update API reference
chore: upgrade dependencies
```
3. Push your branch and open a Pull Request against `main`
4. Fill in the PR template completely
5. Wait for a maintainer review — we aim to respond within 3 business days
### Branch Naming
- `feat/` — new features
- `fix/` — bug fixes
- `docs/` — documentation only
- `chore/` — maintenance tasks
- `test/` — adding or updating tests
Code Style Section
## Code Style
This project uses ESLint and Prettier for consistent formatting.
Run the linter before submitting:
```bash
npm run lint
npm run lint:fix # auto-fix issues
```
Run the formatter:
```bash
npm run format
```
Key conventions:
- 2-space indentation
- Single quotes for strings
- Trailing commas in multi-line expressions
- No unused variables or imports
Testing Section
## Testing
All new features and bug fixes must include tests.
Run the test suite:
```bash
npm test
```
Run tests in watch mode during development:
```bash
npm run test:watch
```
Check coverage:
```bash
npm run test:coverage
```
We aim to maintain at least 80% code coverage. Tests live in the `__tests__/` directory alongside the source files they test.
Pull Request Guidelines
## Pull Request Guidelines
- Keep PRs focused — one feature or fix per PR
- Update documentation if your change affects public APIs
- Add or update tests for all changed behavior
- Ensure all CI checks pass before requesting review
- Link to any related issues using "Closes #123" in the PR description
- Screenshots or screen recordings are appreciated for UI changes
### PR Title Format
Follow Conventional Commits for PR titles:
- `feat: add dark mode support`
- `fix: correct date parsing in timezone converter`
- `docs: add contributing guide`
Reporting Issues Section
## Reporting Issues
Before opening an issue:
- Search existing issues to avoid duplicates
- Check if the issue is already fixed in the latest release
When opening a bug report, include:
- Steps to reproduce the issue
- Expected behavior
- Actual behavior
- Your environment (OS, Node version, browser if applicable)
- Relevant logs or screenshots
For feature requests, describe:
- The problem you are trying to solve
- Your proposed solution
- Any alternatives you have considered
Community Guidelines Section
## Community Guidelines
This project follows the [Contributor Covenant Code of Conduct](CODE_OF_CONDUCT.md).
- Be respectful and constructive in all interactions
- Welcome newcomers and help them get started
- Focus feedback on the code, not the person
- Assume good intent
### Communication Channels
- GitHub Issues — bug reports and feature requests
- GitHub Discussions — questions and general discussion
- Discord — real-time chat (link in README)
Python Project Variant — Setup Section
## Setup
1. Fork and clone the repository
2. Create a virtual environment:
```bash
python -m venv venv
source venv/bin/activate # Windows: venv\Scripts\activate
```
3. Install development dependencies:
```bash
pip install -e ".[dev]"
```
4. Run tests to verify setup:
```bash
pytest
```
Common Use Cases
- Creating a CONTRIBUTING.md for a new open source project
- Updating an outdated contributing guide with modern conventions
- Standardizing contribution workflows across multiple repositories
- Onboarding first-time contributors with clear setup instructions
- Documenting commit message conventions and branch naming rules
- Setting expectations for code review timelines and PR requirements
Generate a complete, professional CONTRIBUTING.md in seconds. Customize each section for your project's stack and workflow, then commit it to your repository to start attracting and retaining contributors.