Generate Comprehensive Contributor Guides
Create comprehensive contributor guides for open source projects.
Why it matters
Automate the creation of detailed contributor guides for open-source projects, ensuring clarity on setup, development, and community standards to foster greater participation.
Outcomes
What it gets done
Define project prerequisites and setup instructions.
Outline contribution workflows, branching strategies, and commit message formats.
Specify code quality standards, automated checks, and CI/CD pipeline requirements.
Detail issue reporting, feature request processes, and community communication guidelines.
Install
Add it to your toolbox
Run in your project directory:
curl -fsSL https://spark.entire.vc/get/vb-contributing-guide | bash Capabilities
What this skill does
Drafts marketing, email, or product copy on demand.
Analyzes code for bugs, style issues, and improvements.
Creates unit, integration, or end-to-end test cases.
Writes source code or scripts from a description.
Overview
Contributing Guide Writer Agent
What it does
Rephrased the 'long' description to focus on the core function of creating contributor guides and enabling developers to find setup information.
How it connects
2023-10-27T10:00:00Z
Source README
Clone and setup
git clone https://github.com/org/project.git
cd project
npm install
npm run setup # runs initial configuration
Verify installation
npm test
npm run lint
#
## Development Scripts
```bash
npm run dev # Start development server
npm run test:watch # Run tests in watch mode
npm run lint:fix # Auto-fix linting issues
npm run type-check # TypeScript type checking
### Branching Strategy
```markdown
## Git Workflow
1. **Fork and Clone**
```bash
gh repo fork org/project --clone
cd project
git remote add upstream https://github.com/org/project.git
Create Feature Branch
git checkout main git pull upstream main git checkout -b feature/issue-123-add-featureDevelopment Cycle
# Make changes npm run test # Ensure tests pass npm run lint:fix # Fix style issues git add . git commit -m "feat: add new feature (#123)"Push Changes
git push origin feature/issue-123-add-feature # Create pull request via GitHub UI or gh CLI gh pr create --title "Add new feature" --body "Fixes #123"
### Commit and PR Guidelines
#
### Commit Message Format
```markdown
## Commit Messages
Use [Conventional Commits](https://conventionalcommits.org/):
type(scope): description
[optional body]
[optional footer(s)]
**Types:**
- `feat`: New features
- `fix`: Bug fixes
- `docs`: Documentation changes
- `style`: Code style changes (formatting, etc.)
- `refactor`: Code refactoring
- `test`: Adding or updating tests
- `chore`: Maintenance tasks
**Examples:**
```bash
feat(auth): add OAuth2 integration
fix(api): handle null response in user endpoint
docs: update installation instructions
test(utils): add unit tests for date helpers
#
### Pull Request Template
```markdown
## Pull Request Guidelines
#
## PR Template
Use this template for all pull requests:
```markdown
### Description
Brief description of changes and motivation.
### Type of Changes
- [ ] Bug fix (non-breaking change)
- [ ] New feature (non-breaking change)
- [ ] Breaking change (fix or feature that changes existing functionality)
- [ ] Documentation update
### Testing
- [ ] Tests pass locally
- [ ] Added new tests for new functionality
- [ ] Completed manual testing
### Checklist
- [ ] Code follows project style guidelines
- [ ] Self-review completed
- [ ] Documentation updated
- [ ] No merge conflicts
### Code Quality Standards
#
### Automated Checks
```markdown
## Quality Assurance
#
## Pre-commit Hooks
We use Husky for pre-commit checks:
```json
// package.json
{
"husky": {
"hooks": {
"pre-commit": "lint-staged",
"commit-msg": "commitlint -E HUSKY_GIT_PARAMS"
}
},
"lint-staged": {
"*.{js,ts,tsx}": ["eslint --fix", "prettier --write"],
"*.{md,json}": ["prettier --write"]
}
}
CI/CD Pipeline
All PRs must pass:
- ✅ Linting (ESLint + Prettier)
- ✅ Type checking (TypeScript)
- ✅ Unit tests (Jest, 80%+ coverage)
- ✅ Integration tests
- ✅ Build verification
### Issues and Discussion Guidelines
#
### Issue Templates
```markdown
## Non-code Contributions
#
## Bug Reports
Use our bug report template:
```markdown
**Bug Description**
Clear description of the issue.
**Steps to Reproduce**
1. Go to '...'
2. Click on '...'
3. See error
**Expected vs Actual Behavior**
- Expected: X should happen
- Actual: Y happened
**Environment**
- OS: [e.g., macOS 12.0]
- Browser: [e.g., Chrome 95]
- Version: [e.g., 1.2.3]
Feature Requests
**Problem Statement**
What problem does this solve?
**Proposed Solution**
How should this work?
**Considered Alternatives**
What other approaches did you consider?
### Community and Communication
#
### Response Time Expectations
```markdown
## Community Standards
#
## Response Times
- **Issues**: Aim to respond within 48 hours
- **Pull Requests**: Initial review within 72 hours
- **Discussions**: Community-managed, no guaranteed response time
#
## Code Review Process
1. Automated checks must pass
2. Requires approval from at least one maintainer
3. Address all review feedback
4. Squash commits before merge (we can help with this)
#
## Getting Help
- 💬 **Discussions**: For questions and ideas
- 🐛 **Issues**: For bugs and feature requests
- 💬 **Discord**: Real-time chat ([invite link])
- 📧 **Email**: Security issues only
Recognition and Incentives
Contributor Recognition
## Recognition
#
## Badges and Achievements
- 🥇 First contribution
- 🔧 Regular contributor (5+ merged PRs)
- 📝 Documentation hero
- 🐛 Bug hunter
- 🌟 Community helper
#
## Swag and Rewards
- Stickers for first contributions
- T-shirt after 10 significant contributions
- Speaking opportunities at conferences for regular contributors
Always adapt contributor guides to your project's specific tech stack, community size, and contribution patterns. Include relevant tools, maintain current examples, and regularly gather feedback from contributors to improve your guide.
Discussion
Questions & comments · 0
Sign In Sign in to leave a comment.