Roadmap This is a roadmap for how to get into open source. It is not a linear path, and you can jump in at any point. The most important thing is to get started, and to keep going.
The chart is written as a Mermaid diagram. You can make changes by editing the code in: guides/roadmap.mmd
Open Source Developer Roadmap
Stage 1: Introduction
Stage 2: Fundamental Tools
Stage 3: Dive into Coding
Stage 4: Engaging with the Community
Stage 5: Make Contributions
Stage 6: Advanced Topics
Stage 7: Your Own Project
What is Open Source?
Philosophy & Principles
Benefits - Collaboration, Transparency, Community
Challenges - Licensing, Governance, Sustainability
Version Control with Git
Basics - Init, Add, Commit, Push, Pull
Branching & Merging
Handling Conflicts
Best Practices
Using GitHub/GitLab/Bitbucket
Repositories, Issues & PRs
Forking vs Cloning
GitHub Actions - CI/CD Basics
Pick a Language
Basics & Advanced Topics
Libraries & Frameworks
Community & Support
Project Structure & Design Patterns
Understanding Open Source Codebase
Common Architectural Patterns
Code Quality & Standards
Finding the Right Project
Good First Issue & Beginner Friendly
Project's Vision, Goals, and Roadmap
Communication Skills
Engaging in Discussions
Reporting Bugs & Enhancements
Code Review Ethics & Best Practices
Documentation & Testing
Writing Clear Documentation
Unit Testing & Test-Driven Development
Bug Fixes & Feature Enhancements
Debugging Strategies
Collaborating with Project Maintainers
Project Governance & Management
Understanding Project's Governance Model
Role of Maintainers, Contributors, and Users
Open Source Licensing
Common Licenses - MIT, GPL, Apache
Choosing a License for Your Project
Sustainability & Monetization
Donations, Crowdfunding, Grants
Open Core, Dual Licensing, Paid Support Models
Starting a New Project
Defining Vision & Scope
Community Building & Management
Continuous Integration & Deployment
CI/CD Pipelines for Open Source
Tools - Travis CI, CircleCI, GitHub Actions
Project Leadership & Mentoring
Nurturing New Contributors
Setting & Managing Expectations