This repository is a carefully curated encyclopedia of project-based tutorials designed for aspiring developers, engineers, and technologists who believe the best way to learn is by building real things .
Unlike traditional courses that teach concepts in isolation, every resource here guides you through constructing functional, production-worthy applications, systems, and tools from scratch. You will write code, debug errors, architect solutions, and ship projects you can proudly showcase.
Complete beginners looking for a structured, hands-on alternative to textbooks
Bootcamp graduates who need portfolio projects that stand out
Self-taught developers seeking depth in computer science and software engineering
Career switchers building credibility in a new domain
Senior engineers who want to explore emerging technologies (AI agents, Web3, AR/VR, etc.)
Interview candidates preparing for system design and practical coding rounds
✨ What Makes This Different?
Feature
This Repository
Typical Lists
Organization
Domain-first + Language-based
Language-only
Difficulty
Every project rated 🟢🟡🔴
Unrated
Learning Paths
Career roadmaps with project sequences
None
Modern Tech
AI/LLMs, MCP, Web3, Rust, Zig, WebGPU
Often outdated
Build Your Own X
Deep systems programming section
Missing or shallow
Cybersecurity
Red team, blue team, and purple team projects
Rare
DevOps/Cloud
Full infrastructure and CI/CD projects
Minimal
Don't know where to start? Follow a curated path designed to take you from beginner to job-ready in a specific role.
🌐 Full-Stack Web Developer
Key Technologies: HTML, CSS, JavaScript, TypeScript, React/Next.js, Node.js, PostgreSQL, MongoDB, Redis, Docker, AWS/GCP/Azure
🤖 AI / Machine Learning Engineer
Key Technologies: Python, PyTorch, TensorFlow, Hugging Face, LangChain, OpenAI API, scikit-learn, Pandas, NumPy, CUDA
☁️ DevOps / Cloud / SRE Engineer
Key Technologies: Linux, Bash, Docker, Kubernetes, Terraform, Ansible, Jenkins/GitHub Actions, AWS/Azure/GCP, Prometheus, Grafana, ELK Stack
🔒 Cybersecurity Specialist
Key Technologies: Python, Kali Linux, Wireshark, Metasploit, Burp Suite, Snort, Splunk, YARA, Solidity
⛓️ Blockchain / Web3 Developer
Key Technologies: Solidity, Rust (Anchor), Hardhat, Foundry, Ethers.js, Web3.py, IPFS, Ethereum, Solana
📱 Mobile Developer
Key Technologies: Swift, Kotlin, Flutter, React Native, Firebase, Core Data, Room
🎮 Game Developer
Key Technologies: C++, C#, Rust, Unity, Unreal Engine, OpenGL/Vulkan, WebGL, Godot
📊 Data Engineer / Data Scientist
Key Technologies: Python, SQL, Spark, Kafka, Airflow, dbt, Snowflake/BigQuery, Tableau, Pandas
Legend: 🟢 Beginner | 🟡 Intermediate | 🔴 Advanced
Click any domain below to jump to its projects.
Master a language by building real software in it. Each section contains tutorials ranging from command-line tools to compilers and operating systems.
Difficulty
Project
What You'll Learn
🟡
Build an Interpreter (Ch. 14+)
Parsing, VMs, memory management
🟡
Memory Allocators 101
malloc, free, heap management
🟡
Write a Shell in C
Process forking, IPC, system calls
🟡
Build Your Own Text Editor
Terminal UI, buffer management
🟡
Build Your Own Lisp
Recursion, parsing, lambdas
🟡
Building a CHIP-8 Emulator
Emulation, CPU cycles, graphics
🔴
Write an OS from scratch
Bootloaders, protected mode, interrupts
🔴
Linux Container in 500 Lines
Namespaces, cgroups, chroot
🔴
Write Your Own Virtual Machine
Instruction sets, register machines
🔴
Build Your Own Redis
Event loops, protocols, data structures
🔴
Write a C Compiler
Lexing, parsing, code generation
🔴
Let's Code a TCP/IP Stack
Networking, Ethernet, ARP, TCP
🔴
Tiny Renderer (OpenGL from scratch)
3D graphics, rasterization
🔴
Write a Bootloader in C
BIOS, real mode, disk I/O
🔴
Build a Live Code-Reloader for C++
Dynamic linking, ELF/DWARF
🔴
Programming Concurrent Servers
Threads, event-driven, async I/O
🔴
MQTT Broker from Scratch
Pub/sub, protocol design
Difficulty
Project
What You'll Learn
🟢
Build a URL Shortener with Gin & Redis
HTTP routing, caching
🟡
Building a Blockchain in Go
PoW, persistence, networking
🟡
REST API Masterclass (Go + Postgres + Docker)
Clean architecture, DB migrations
🟡
Building a BitTorrent Client
P2P networking, DHT, bencode
🔴
Building a Container from Scratch
Namespaces, cgroups, overlayfs
🔴
REST Servers in Go (7-part series)
Middleware, auth, GraphQL
🔴
Go WebAssembly Calculator
WASM, JS interop
Difficulty
Project
What You'll Learn
🟢
Build a Microblog with Flask
Forms, ORM, blueprints
🟢
Create a Blog with Django
Admin, models, templates
🟡
Build a RESTful Microservice
Docker, testing, REST
🟡
Microservices with Docker, Flask, and React
TDD, CI/CD, AWS
🔴
Real-time Chat with Django + RabbitMQ + uWSGI
WebSockets, message brokers
Web Scraping & Automation
Data Science & Machine Learning
Difficulty
Project
What You'll Learn
🟢
Build the Game of Life
2D arrays, terminal rendering
🟡
Build a Simple Blockchain
Hashing, PoW, consensus
🟡
Write a NoSQL Database
B-trees, serialization
🟡
Write Yourself a Git
Hash objects, refs, merges
🟡
Build a Search Engine
Inverted indices, TF-IDF, ranking
🔴
Distributed Streaming with Kafka
Stream processing, consumers
🔴
Build a Python Bytecode VM
Stack machines, bytecode
Difficulty
Project
What You'll Learn
🟡
A Simple Web App in Rust
HTTP servers, templating
🟡
Write an OS in Pure Rust
Bootloaders, paging, interrupts
🟡
Build a Browser Engine in Rust
CSS parsing, box model, painting
🟡
Write a Microservice in Rust
Hyper, JSON, async
🟡
Too Many Linked Lists
Ownership, lifetimes, unsafe
🔴
Write a NES Emulator
CPU emulation, PPU, APU
🔴
Evolution Simulation with WASM
Genetic algorithms, neural nets, WASM
🤖 Artificial Intelligence & Machine Learning
Build intelligent systems, from classical ML to cutting-edge LLMs and AI agents.
Generative AI & Large Language Models (LLMs)
Difficulty
Project
What You'll Learn
Stack
🟢
Build a RAG Chatbot over Your Documents
Retrieval-Augmented Generation, embeddings, vector search
Python, LangChain, OpenAI, Pinecone
🟡
Fine-tune LLaMA with LoRA on Custom Data
PEFT, quantization, instruction tuning
Python, PyTorch, Hugging Face, PEFT
🟡
Build an AI Agent with ReAct Pattern
Tool use, reasoning, memory
Python, LangGraph, OpenAI API
🔴
Build a Local AI Agent with MCP (Model Context Protocol)
MCP servers, tool integration, local LLMs
Python, MCP SDK, Claude API, Ollama
🔴
Create a Multi-Agent Orchestration System
Agent collaboration, task delegation, planning
Python, CrewAI, LangChain
🔴
Build an AI Code Review Bot
Code understanding, patch generation, SWE-bench
Python, OpenAI, GitHub API
Difficulty
Project
What You'll Learn
Stack
🟢
Build a Face Detection Pipeline
Haar cascades, DNN face detector
Python, OpenCV
🟡
Real-time Object Detection with YOLOv8
Anchors, NMS, COCO dataset
Python, PyTorch, Ultralytics
🟡
Build a Facial Recognition Attendance System
Face embeddings, cosine similarity
Python, face_recognition, OpenCV
🔴
Train a Diffusion Model from Scratch
DDPM, U-Net, noise scheduling
Python, PyTorch, CUDA
🔴
Build a Segment Anything (SAM) Fine-tune
Promptable segmentation, ViT
Python, PyTorch, SAM
Natural Language Processing
Difficulty
Project
What You'll Learn
Stack
🟢
Sentiment Analysis with BERT
Tokenizers, transformers, fine-tuning
Python, Hugging Face
🟡
Build a Named Entity Recognition System
BIO tagging, token classification
Python, spaCy, Hugging Face
🟡
Create a Text Summarization API
Seq2seq, beam search, ROUGE
Python, FastAPI, Transformers
🔴
Train a Custom GPT-2 from Scratch
Tokenization, attention, distributed training
Python, PyTorch, CUDA
🔴
Build a Multilingual Translation Engine
Encoder-decoder, BLEU evaluation
Python, MarianMT, FastAPI
Difficulty
Project
What You'll Learn
Stack
🟡
Train an Agent to Play CartPole
Q-learning, policy gradients
Python, Gymnasium, PyTorch
🟡
Build a Chess AI with Alpha-Beta + NN
MCTS, value networks, self-play
Python, PyTorch, python-chess
🔴
Train an RL Agent for Robotics (MuJoCo)
Actor-critic, PPO, sim-to-real
Python, Gymnasium, Stable Baselines3
Difficulty
Project
What You'll Learn
Stack
🟡
Build an ML Pipeline with Apache Airflow
DAGs, scheduling, data validation
Python, Airflow, MLflow
🟡
Deploy a Model with FastAPI + Docker
REST APIs, containerization, health checks
Python, FastAPI, Docker
🔴
Set Up Kubeflow for Model Training
Kubernetes, distributed training, pipelines
Kubernetes, Kubeflow, TensorFlow
🔴
Build a Feature Store with Feast
Feature engineering, online/offline stores
Python, Feast, Redis, BigQuery
Difficulty
Project
What You'll Learn
Stack
🟢
Build a Personal Portfolio Site
HTML, CSS, responsive design
HTML, CSS, JS
🟢
Build a Calculator with React
State management, event handling
React, CSS
🟡
Build an E-commerce Product Page
API integration, cart state, routing
React, Tailwind
🟡
Build a Real-time Collaborative Whiteboard
CRDTs, WebSockets, canvas drawing
React, Liveblocks, Canvas API
🔴
Build a Design System from Scratch
Component libraries, a11y, theming
React, Storybook, TypeScript
🔴
Build a WebAssembly Image Editor
WASM, memory buffers, performance
Rust/C++, WASM, Canvas
Difficulty
Project
What You'll Learn
Stack
🟢
Build a REST API with FastAPI
Pydantic, dependency injection, async
Python, FastAPI, PostgreSQL
🟡
Build a GraphQL API with Apollo Server
Schemas, resolvers, dataloaders
Node.js, GraphQL, MongoDB
🟡
Build a gRPC Microservice
Protocol Buffers, streaming, interceptors
Python/Go, gRPC, Docker
🔴
Build a Real-time Notification Service
Pub/sub, fan-out, delivery guarantees
Node.js, Redis, WebSockets
🔴
Design a URL Shortener at Scale
Hashing, rate limiting, analytics
Go, Redis, PostgreSQL, Kafka
Difficulty
Project
What You'll Learn
Stack
🟡
Build a SaaS App with Next.js 14
App Router, Server Actions, auth
Next.js, Prisma, Stripe
🟡
Build a Notion Clone
Block-based editors, real-time collab
Next.js, Socket.io, PostgreSQL
🔴
Build a Figma-like Design Tool
Canvas rendering, CRDTs, export
React, TypeScript, Yjs
🔴
Build a Video Conferencing App
WebRTC, SFU architecture, signaling
Node.js, WebRTC, Socket.io
Android (Kotlin / Jetpack Compose)
☁️ DevOps, Cloud & Site Reliability
Containers & Orchestration
Difficulty
Project
What You'll Learn
Stack
🟢
Containerize a Python App with Docker
Dockerfiles, layers, multi-stage builds
Docker
🟡
Deploy a Local Kubernetes Cluster
Pods, services, deployments, ingress
kind/minikube, kubectl
🟡
Build a Helm Chart for Your App
Templating, values, releases
Helm, Kubernetes
🔴
Set Up a Service Mesh with Istio
mTLS, traffic management, observability
Istio, Kubernetes
🔴
Build a GitOps Pipeline with ArgoCD
Declarative CD, sync waves, rollbacks
ArgoCD, Kubernetes
Difficulty
Project
What You'll Learn
Stack
🟢
Set Up GitHub Actions for Testing
Workflows, matrices, artifacts
GitHub Actions
🟡
Build a Jenkins Pipeline from Scratch
Groovy, stages, agents, parallel jobs
Jenkins, Docker
🟡
Implement Trunk-Based Development
Feature flags, automated releases
GitHub Actions, LaunchDarkly
🔴
Build a Self-Hosted CI/CD Runner on ARM
Runner management, security hardening
GitHub Actions, ARM, Docker
Observability & Monitoring
Difficulty
Project
What You'll Learn
Stack
🟡
Set Up Prometheus + Grafana Stack
Metrics, PromQL, dashboards
Prometheus, Grafana
🟡
Build a Centralized Logging Pipeline
Log aggregation, parsing, alerts
ELK / Loki
🔴
Implement Distributed Tracing with Jaeger
OpenTelemetry, spans, sampling
Jaeger, OpenTelemetry
🔴
Build an SLO Dashboard
Error budgets, burn rates, alerting
Prometheus, Grafana, PagerDuty
Serverless & Cloud Native
⚠️ Ethics Notice: All projects below are intended for educational and authorized testing purposes only. Never test vulnerabilities on systems you do not own or have explicit permission to test.
Application Security (AppSec)
Difficulty
Project
What You'll Learn
Stack
🟢
Packet Sniffing with Scapy
Raw sockets, protocols, BPF filters
Python, Scapy
🟡
Build a Network Anomaly Detector
Flow analysis, unsupervised ML
Python, scikit-learn
🟡
Create a Simple Honeypot
Deception, logging, attack capture
Python, Twisted
🔴
Build a Custom Intrusion Detection System
Signature matching, anomaly detection
C, Suricata
Offensive Security (Red Team)
Difficulty
Project
What You'll Learn
Stack
🟡
Write a Custom Port Scanner
SYN stealth, service detection
Python, socket, nmap
🟡
Build a SQL Injection Testing Tool
Error-based, blind, time-based SQLi
Python, requests
🔴
Create a Reverse Shell Payload
Socket programming, obfuscation
Python, C, PowerShell
🔴
Build a C2 Framework Component
Beaconing, encryption, opsec
Python, Go, cryptography
Difficulty
Project
What You'll Learn
Stack
🟡
Build a Security Log Analyzer
SIEM, correlation rules, alerts
ELK Stack
🟡
Create a Memory Forensics Tool
Volatility, YARA, process analysis
Python, YARA
🔴
Build a Threat Intelligence Platform
IOC sharing, STIX/TAXII, enrichment
Python, MISP, PostgreSQL
🔴
Develop a SOAR Playbook Engine
Automation, incident response, APIs
Python, Splunk SOAR
Difficulty
Project
What You'll Learn
Stack
🟢
Create an ERC-20 Token
Solidity, OpenZeppelin, Remix
Solidity, Hardhat
🟡
Build an NFT Marketplace
ERC-721, IPFS, meta-transactions
Solidity, Next.js, Ethers.js
🟡
Write a Multi-Sig Wallet Contract
Access control, transaction batching
Solidity, Foundry
🔴
Build a DeFi Lending Protocol
Flash loans, interest rates, oracles
Solidity, Hardhat, Chainlink
🔴
Create a DAO with On-Chain Governance
Governor Bravo, timelocks, voting
Solidity, OpenZeppelin
Difficulty
Project
What You'll Learn
Stack
🟡
Build a Wallet with Web3 Auth
MPC, social login, key management
React, Web3Auth
🟡
Create a Cross-Chain Bridge UI
Message passing, liquidity pools
TypeScript, LayerZero
🔴
Index Blockchain Data with The Graph
Subgraphs, indexing, GraphQL
The Graph, AssemblyScript
🔴
Build a Zero-Knowledge Proof Demo
Circom, zk-SNARKs, verifiers
Circom, snarkjs, Solidity
Solana & Alternative Chains
📊 Data Science, Analytics & Big Data
Difficulty
Project
What You'll Learn
Stack
🟢
Build an ETL Pipeline with Pandas
Cleaning, transformation, loading
Python, Pandas, SQL
🟡
Create a Real-Time Streaming Pipeline
Producers, consumers, Kafka Connect
Python, Kafka, PostgreSQL
🟡
Orchestrate Pipelines with Apache Airflow
DAGs, backfilling, sensors
Python, Airflow
🔴
Build a Data Lakehouse with Delta Lake
ACID, time travel, schema enforcement
Spark, Delta Lake, S3
Analytics & Visualization
Difficulty
Project
What You'll Learn
Stack
🟢
Build Snake in the Terminal
Game loops, collision, rendering
Python/C
🟢
Build a Platformer in Godot
Physics, animations, tilemaps
GDScript, Godot
🟡
Build a Roguelike in Rust
ECS, FOV, procedural dungeons
Rust, bracket-lib
🟡
Create a Tower Defense in Unity
Pathfinding, object pooling, waves
C#, Unity
🥽 AR / VR / Spatial Computing
Difficulty
Project
What You'll Learn
Stack
🟢
Build a WebXR 360 Viewer
XR sessions, matrices, rendering
JavaScript, Three.js
🟡
Create an AR Measurement App
Plane detection, anchors, hit tests
ARCore / ARKit
🟡
Build a VR Meditation Experience
Locomotion, UI in 3D, audio spatialization
C#, Unity
🔴
Develop a Hand Tracking Interface
Gesture recognition, skeletal tracking
Unity, Oculus SDK
🔌 IoT, Embedded Systems & Robotics
Difficulty
Project
What You'll Learn
Stack
🟢
Blink an LED with Arduino
GPIO, timers, serial
C++, Arduino
🟡
Build a Custom Keyboard Firmware
Matrix scanning, debouncing, USB HID
C, QMK
🟡
Program an ESP32 Wi-Fi Sensor
FreeRTOS, Wi-Fi, deep sleep
C, ESP-IDF
🔴
Write a Bare-Metal ARM Kernel
Bootloader, UART, MMU
C, ARM Assembly
🏗️ System Design & Architecture
Difficulty
Project
What You'll Learn
Stack
🟡
Design a URL Shortener
Hashing, rate limiting, analytics
Any
🟡
Design a Rate Limiter
Token bucket, sliding window, Redis
Redis, any backend
🔴
Design Twitter/X Feed System
Fan-out, timeline, caching
System design concepts
🔴
Design a Distributed Message Queue
Log compaction, partitions, replication
Kafka internals
🔴
Design Uber's Dispatch System
Geohashes, supply-demand, ETA
System design concepts
🧪 Quality Assurance & Testing
🎨 UI/UX Design & Frontend Craft
Difficulty
Project
What You'll Learn
Stack
🟢
Design a Design System in Figma
Components, variants, auto-layout
Figma
🟡
Build an Accessible Component Library
ARIA, keyboard nav, screen readers
React, Storybook
🟡
Create CSS Art & Animations
Clip-path, keyframes, SVG
HTML, CSS
🔴
Build a Procedural Texture Generator
Shaders, GLSL, noise functions
WebGL, GLSL
✍️ Technical Writing & Documentation
Difficulty
Project
What You'll Learn
Stack
🟢
Write API Documentation with OpenAPI
Spec-driven docs, code generation
OpenAPI, Markdown
🟡
Build a Documentation Site with Docusaurus
Versioning, i18n, search
React, Docusaurus
🟡
Create Interactive Tutorials with MDX
Embedded components, live code
MDX, Gatsby/Next.js
🔴
Develop a Docs-as-Code Pipeline
CI/CD for docs, linting, vale
Git, Markdown, GitHub Actions
🏆 Competitive Programming & Algorithms
Deep systems programming. Understand how things work by building them yourself.
🎓 Computer Science Fundamentals
Strengthen your theoretical foundation with these classic projects.
📖 How to Use This Repository
Pick a Learning Path above if you have a career goal in mind.
Otherwise, pick a domain that excites you and start with 🟢 Beginner projects.
Read the tutorial carefully, but do not copy-paste code. Type it yourself.
Break things intentionally. Modify the code to see what happens.
Extend the project. Add features the tutorial didn't cover.
Document your journey. Blog about it or post on LinkedIn/Twitter.
Push to GitHub. A public portfolio is your best resume.
Consistency beats intensity. 30 minutes daily is better than 10 hours once a week.
Finish projects, don't just start them. The last 20% teaches you the most.
Read other people's code. After building, compare with open-source implementations.
Teach what you learn. Write a blog post or mentor someone.
We welcome contributions! This repository thrives because of the community. Please read CONTRIBUTING.md for detailed guidelines.
Ensure your tutorial link is working and accessible .
Place projects under the correct domain and difficulty .
Use the format: | Difficulty | [Project Name](link) | Description | Stack |
If adding a new domain, update the Table of Contents.
One pull request per project or logical group.
🐛 Fix broken links
✨ Add new projects (especially in emerging tech)
📚 Improve descriptions and learning outcomes
🌍 Translate to other languages
🎨 Improve repository design and organization
This repository is licensed under the MIT License .
If this repository helped you, please ⭐ star it and share it with others!
⬆️ Back to Top
Built with ❤️ by learners, for learners.