A curated list of tutorials to learn programming through projects.
A

A curated list of tutorials to learn programming through projects.

A curated list of tutorials to learn programming through projects.

1,569 stars
N/A forks
N/A contributors

README

Project documentation from GitHub

Learn to Code by Building Stuff: A Curated List for Hands-On Devs

We've all been there. You finish a tutorial, close the browser tab, and think, "Okay, I know the syntax... now what?" Reading about for loops and watching videos on REST APIs is one thing, but applying that knowledge to a real, working project is where everything clicks. The gap between theory and practice can be frustrating.

That's why this curated GitHub repository caught our eye. It cuts straight to the chase, gathering project-based tutorials from across the web into one organized list. It's for developers who learn best by doing, by getting their hands dirty with code that actually builds something.

What It Does

Learn-by-projects is exactly what it sounds like: a massive, well-organized collection of links to tutorials where the primary goal is to build a complete project. Instead of abstract concepts, you pick a project—like a Twitter clone, a Spotify player, or a blockchain simulation—and learn the necessary programming concepts along the way. The repo categorizes these tutorials by programming language and technology stack, making it easy to find a path that matches your interests.

Why It's Cool

The value here is in the curation and focus. Anyone can Google "JavaScript project ideas," but sifting through the results to find a quality, step-by-step tutorial is a chore. This repo does the heavy lifting.

  • Language & Stack Specific: Whether you're aiming to learn Python for data science, Go for backend services, or React for frontend UIs, you can jump straight to a relevant section.
  • Project Diversity: It goes beyond simple to-do apps. You'll find projects on machine learning, game development, web scraping, mobile apps, and DevOps tools. This variety helps you explore different fields within software development.
  • Passive Learning Path: You can use it as a structured roadmap. Start with a beginner project in a language, then progressively tackle more intermediate and advanced builds in the same stack to deepen your understanding.
  • It's a Community Effort: As a GitHub repo, it's open to contributions. If you find or create an excellent project tutorial that fits, you can add it, making the resource more valuable for everyone.

How to Try It

There's nothing to install. This is a reference resource.

  1. Head over to the repository: github.com/ckissi/Learn-by-projects
  2. Browse the README. Start by looking at the table of contents to see the major categories (Languages, Frontend, Backend, etc.).
  3. Dive into a section that aligns with your learning goal. For exampl

Did you like this issue?

Join our weekly newsletter

Love discovering amazing projects?

Help us continue bringing you the best open-source discoveries every week.

Back to Projects
Last updated: Jan 12, 2026