Contributing to open source builds your skills, your network, and your resume. Here are the best projects to start with — welcoming communities, good documentation, and real impact.
| Signal | What It Means |
|---|
| "Good first issue" labels | Maintainers actively onboard newcomers |
| CONTRIBUTING.md file | Clear process for getting started |
| Quick PR reviews (< 1 week) | Active maintainers who value contributions |
| Active discussions/Discord | Community to ask questions |
| Recent releases | Project is alive and shipping |
| Diverse contributors | Welcoming culture |
| Signal | What It Means |
|---|
| PRs sitting unreviewed for months | Overwhelmed or absent maintainers |
| No contribution guide | Ad hoc process, frustrating for newcomers |
| Hostile code review comments | Toxic culture |
| No releases in 6+ months | Potentially abandoned |
| CLA required | Extra legal step (not always bad, but friction) |
| Project | Stack | Good First Issues | Why Contribute |
|---|
| Cal.com | Next.js, TypeScript | ✅ Many | Modern stack, fast-growing |
| Plane | Next.js, TypeScript | ✅ Many | Clean codebase, active community |
| Twenty | React, TypeScript | ✅ Active | CRM with modern architecture |
| Formbricks | Next.js, TypeScript | ✅ Active | Well-documented |
| Penpot | ClojureScript, React | ✅ Some | Design tool, unique domain |
| Project | Stack | Good First Issues | Why Contribute |
|---|
| Meilisearch | Rust | ✅ Active | Learn Rust, fast-growing project |
| Supabase | Go, TypeScript, Elixir | ✅ Many | Multi-language, huge impact |
| n8n | TypeScript, Node.js | ✅ Active | Build integrations for automation |
| Chatwoot | Ruby on Rails | ✅ Many | Mature Rails codebase |
| Typesense | C++ | ✅ Some | Performance-critical systems |
| Project | Stack | Good First Issues | Why Contribute |
|---|
| Coolify | PHP, Docker | ✅ Many | PaaS tooling, Docker expertise |
| Uptime Kuma | Node.js | ✅ Many | Monitoring, very welcoming community |
| Grafana | Go, TypeScript | ✅ Active | Industry-standard observability |
| OpenTofu | Go | ✅ Active | Terraform fork, high impact |
| Dokku | Shell, Go | ✅ Some | PaaS, learn containerization |
| Project | Why | Getting Started |
|---|
| Supabase | Huge docs, always needs updates | docs.supabase.com, GitHub issues labeled "documentation" |
| Mattermost | Enterprise-grade docs needs | docs.mattermost.com, contribution guide |
| n8n | Node documentation for 400+ integrations | docs.n8n.io, node creation guides |
| Plane | Growing fast, docs lag features | GitHub wiki, feature documentation |
| Type | Projects | What You'd Do |
|---|
| Translation | Mattermost, Chatwoot, Plane | Translate UI to your language |
| Design | Penpot, Cal.com, Twenty | UI/UX improvements, icon design |
| Testing | Any project | File detailed bug reports, test PRs |
| Community | Mattermost, n8n | Answer questions, write tutorials |
| Content | Cal.com, Supabase | Blog posts, video tutorials |
Choose something you already use or want to learn. Motivation matters.
git clone https://github.com/[project]
cd [project]
cp .env.example .env
docker compose up -d
- Look for labels:
good first issue, help wanted, beginner-friendly
- Read recent issues to understand common patterns
- Check the CONTRIBUTING.md for guidance
- Fork the repo
- Create a branch:
git checkout -b fix/issue-123
- Make your changes
- Write clear commit messages
- Open a PR with a description of what you changed and why
- Be patient — reviews take time
- Respond to review feedback promptly
- Don't take feedback personally
- Ask questions if unclear
- Celebrate when it's merged!
- Portfolio: OSS contributions are visible proof of skill
- Networking: You meet maintainers who are often hiring
- Learning: Reading good codebases is the fastest way to improve
- Interview material: "I contributed to Supabase" is a compelling talking point
- Bug fixes improve stability for everyone
- Documentation helps thousands of users
- Features you build are used by companies worldwide
- Translation makes software accessible globally
- More contributors = more sustainable projects
- Diverse contributors = better software
- Your contribution inspires others to contribute
| Type | Example | Impact |
|---|
| Fix typos in docs | "Changed 'recieve' to 'receive'" | Low effort, appreciated |
| Add missing tests | "Added unit tests for auth module" | Medium effort, high impact |
| Fix reported bugs | "Fixed crash when X is empty" | Medium effort, high impact |
| Improve error messages | "Made database error more descriptive" | Low effort, high impact |
| Add dark mode support | "Added dark theme to dashboard" | Medium effort, users love it |
| Write a tutorial | "How to deploy X on Hetzner" | Medium effort, high reach |
| Create Docker Compose | "Added docker-compose.yml for easy setup" | Low effort, huge impact |
| Translate UI | "Added Japanese translations" | Medium effort, global impact |
The best open source projects to contribute to are ones you actually use or want to learn. Start with documentation or small bug fixes, build confidence, then tackle features.
Every contribution — no matter how small — makes open source better for everyone.
Find open source projects worth contributing to at OSSAlt.