Skip to content

An open source practice repository designed to help beginners learn GitHub contributions through hands-on tasks in HTML, CSS, JavaScript, React, Python, and C++. Fork, solve, and raise PRs.

License

Notifications You must be signed in to change notification settings

Shubhangi011/Open-Source-Practice-Lab

Β 
Β 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

10 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸš€ Open Source Practice Lab

Learn Open Source by Contributing β€” Not by Watching Tutorials

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.

GitHub stars GitHub forks GitHub issues PRs Welcome Beginner Friendly License


πŸ“Œ What Is This Repository?

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.


πŸ‘₯ Who Is This For?

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.


🧠 Technologies & Languages Covered

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:

  • easy
  • medium
  • hard

More technologies and tasks will be added over time.


πŸ“‚ Repository Structure

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)

⚑ Quick Start

  1. Fork this repository
  2. Clone your fork locally
  3. Create a new branch
  4. Solve one task of your choice
  5. Commit your changes
  6. Open a Pull Request πŸš€

That’s it β€” welcome to open source.


πŸ›  Setup Instructions

1️⃣ Fork the Repository

Click the Fork button at the top‑right of this page.

2️⃣ Clone Your Fork

git clone https://github.com/<your-username>/Open-Source-Practice-Lab.git
cd Open-Source-Practice-Lab

3️⃣ Create a New Branch

git checkout -b solve-task-name

πŸ” Always create a new branch for each task.


🧩 Choosing a Task

  1. Open the tasks/ folder
  2. Select a technology
  3. Choose a difficulty level
  4. Open any task file
  5. Read the instructions inside the file

πŸ’‘ Tasks are also tracked as GitHub Issues for easier discovery.


πŸ“€ Submitting Your Contribution

After completing a task:

git add .
git commit -m "Solve: <task-name>"
git push origin solve-task-name

Then:

  • 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.


πŸ“ Contribution Rules

  • 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.


πŸ”„ What Happens After Merge?

  • 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.


🧠 Learning Goals

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.


🌱 Creating New Tasks

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.


πŸ‘€ Maintainer

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.


πŸ“„ License

This project is licensed under the MIT License.


✨ Build skills. Build confidence. Build open source habits. ✨

About

An open source practice repository designed to help beginners learn GitHub contributions through hands-on tasks in HTML, CSS, JavaScript, React, Python, and C++. Fork, solve, and raise PRs.

Resources

License

Code of conduct

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 41.1%
  • HTML 22.9%
  • CSS 14.7%
  • C++ 14.6%
  • Python 6.7%