A beginner-friendly open source repository designed to help developers learn real GitHub contribution workflows by solving practical, well-structured tasks across multiple technologies.
β If this repository helps you, please consider starring it so more learners can discover it.
Open Source Practice Lab is a beginner-friendly open source repository designed for students and earlyβcareer developers who want to:
- Learn how open source actually works
- Practice real GitHub workflows (Fork β Branch β Commit β PR β Review)
- Improve programming skills using hands-on tasks
- Build confidence before contributing to large production repositories
π No permission or assignment required. If an issue is open, you can start working on it.
This repository is perfect for:
- Beginners making their first open source contribution
- Students looking for real GitHub experience
- Developers who feel nervous contributing to large repositories
- Anyone practicing Git, GitHub, and collaboration workflows
No prior open source experience is required.
The repository currently includes open source practice tasks for:
- HTML β structure and semantic markup
- CSS β layouts, responsiveness, and styling
- JavaScript β logic, arrays, functions, and utilities
- React β components, hooks, and state management
- Python β logic building, file handling, and CLI basics
- C++ β data structures and problem solving (DSA)
Each technology is organized by difficulty level:
easymediumhard
More technologies and tasks will be added over time.
tasks/
βββ html/
βββ css/
βββ javascript/
βββ react/
βββ python/
βββ cpp/
Each technology folder contains:
easy/
medium/
hard/
Each task file includes:
- A clear problem statement
- TODO instructions
- Sample input/output (where applicable)
- Fork this repository
- Clone your fork locally
- Create a new branch
- Solve one task of your choice
- Commit your changes
- Open a Pull Request π
Thatβs it β welcome to open source.
Click the Fork button at the topβright of this page.
git clone https://github.com/<your-username>/Open-Source-Practice-Lab.git
cd Open-Source-Practice-Labgit checkout -b solve-task-nameπ Always create a new branch for each task.
- Open the
tasks/folder - Select a technology
- Choose a difficulty level
- Open any task file
- Read the instructions inside the file
π‘ Tasks are also tracked as GitHub Issues for easier discovery.
After completing a task:
git add .
git commit -m "Solve: <task-name>"
git push origin solve-task-nameThen:
- Go to your fork on GitHub
- Click Compare & Pull Request
- Add a short description of what you solved
- Submit the PR
Wait for review and feedback.
- One task per Pull Request
- Do not modify unrelated files
- Do not delete task instructions
- Keep code clean and readable
- Be respectful in discussions
PRs that donβt follow these rules may be requested for changes.
- Your PR will be merged into the main branch
- The task remains solved for future learners to study
- Your contribution stays visible on GitHub
This repository does not reset tasks β it grows as a learning archive.
By contributing here, you will practice:
- Git & GitHub fundamentals
- Reading and understanding requirements
- Writing clean, scoped code
- Collaborating through PR reviews
- Open source etiquette
These are real industryβrelevant skills.
Want to help others learn?
Youβre welcome to:
- Add new tasks
- Propose new technologies
- Improve task descriptions
Please open a Pull Request with clear details about the task and difficulty.
Abhishek Yadav π§ Contact: 2516abhi43@gmail.com
If youβre a beginner and feel nervous β this repository is built for you. Start small. Learn by doing.
This project is licensed under the MIT License.
β¨ Build skills. Build confidence. Build open source habits. β¨