This repository is a back-to-basics learning path for backend development.
It is designed for two groups of people:
- Beginners who want a gentle introduction to backend concepts.
- Rusty developers who want a calm way to get back into practice.
The project starts small and stays practical. You learn one idea at a time, then use those ideas to build a simple system.
This repo is not a large framework and not a production template. It is a teaching project.
You will use it to:
- learn the basics of backend behavior
- see how common failures happen
- practice fixing one problem at a time
- build confidence by making small working things
Start here:
Then move in this order:
- Complete the exercises.
- Read the system-building guide.
- Build the authentication component.
- Use the reference files only when you want to compare your work.
- docs/ contains the guides, roadmap, and progress notes.
- exercises/ contains the beginner practice files.
- components/ contains the system-building phase.
- reference/ contains finished examples.
- tools/ contains scripts for running and testing the project.
Phase 1: learn the basics
- Database connection pools
- Network retries and timeouts
- Rate limiting
Phase 2: build a small system
- Authentication system
- More components, only if you want to keep going
pip install -r requirements.txt
code exercises/ex1_db_starter.pyWork through the TODOs, one method at a time, and run the file often.
python tools/launcher.py
python tools/test_scenarios.py
code docs/ROADMAP.md
code docs/MY_PROGRESS.mdThat is normal. Read the error, make one small change, and try again. The goal is steady progress, not speed.