practical-tutorials

    practical-tutorials/project-based-learning

    #307 this week

    Curated list of project-based tutorials

    education
    beginner-project
    cpp
    golang
    javascript
    project
    Python
    MIT
    276.2K stars
    35.6K forks
    276.2K GitHub watchers
    Updated 8/3/2026
    View on GitHub

    Backblaze Generative Media Hackathon

    Build the next generation of AI media apps with Genblaze, stored on Backblaze B2. $10,000 in prizes.

    Enter the hackathon

    Loading star history...

    Use Cases & Benefits

    • Provides a curated collection of project-based programming tutorials across multiple languages and technologies for hands-on learning.
    • Offers diverse, language-specific projects that enable practical skill development by building real applications from scratch.
    • Use for beginners seeking structured, language-focused tutorials to build foundational programming projects in Python, C++, or JavaScript.
    • Use for developers wanting to deepen understanding of systems programming by building interpreters, OS kernels, or network stacks in C/C++.
    • Use for web and mobile developers aiming to create full-stack applications or clones of popular apps using React, Angular, Flutter, or Node.js.

    About project-based-learning

    Project Based Learning

    Gitter Link rot sweep

    A list of programming tutorials in which aspiring software developers learn how to build an application from scratch. These tutorials are divided into different primary programming languages. Tutorials may involve multiple technologies and languages.

    To get started, simply fork this repo. Please refer to CONTRIBUTING.md for contribution guidelines.

    Table of Contents:

    C/C++:

    Network programming

    OpenGL:

    C#:

    Clojure:

    Dart:

    Flutter:

    Elixir

    Erlang

    F#:

    Java:

    JavaScript:

    HTML and CSS:

    Mobile Application:

    Web Applications:

    React:

    Next.js:

    Angular:

    Node:

    Vue

    Others (Hapi, Express...):

    D3.js

    Game Development:

    Desktop Application:

    Miscellaneous:

    Kotlin:

    Lua:

    LÖVE:

    Python:

    Web Scraping:

    Web Applications:

    Bots:

    Data Science:

    Machine Learning:

    OpenCV:

    Deep Learning:

    Miscellaneous:

    Go:

    PHP:

    OCaml:

    Ruby:

    Ruby on Rails:

    Haskell:

    R:

    Rust:

    Scala:

    Swift:

    Additional Resources

    Discover Repositories

    Search across tracked repositories by name or description