Skip to content

Expansion Modules

Home: README

These modules teach Python technologies beyond the enterprise operations ladder. Each module is self-contained with 3–5 projects that progress from basics to intermediate use. They use real libraries, not simulations.

How to use these modules

  1. Complete the prerequisite level listed for each module.
  2. Create a virtual environment and install the module's dependencies: pip install -r requirements.txt
  3. Work through projects in order (01 → 02 → 03 …).
  4. Each project follows the same pattern: run → alter → break → fix → explain.

Module index

# Module Projects Prerequisite What you learn
01 Web Scraping 5 Level 2 requests, BeautifulSoup, CSS selectors, pagination, CSV export
02 CLI Tools 5 Level 2 click, typer, subcommands, interactive prompts, progress bars
03 REST APIs — Consuming 5 Level 2 requests, JSON parsing, authentication, retries, API client design
04 FastAPI Web Apps 5 Level 3 + Module 03 FastAPI, Pydantic, uvicorn, CRUD endpoints, JWT auth
05 Async Python 5 Level 3 async/await, asyncio, aiohttp, queues, concurrent tasks
06 Databases & ORM 5 Level 3 sqlite3, SQLAlchemy, Alembic migrations, query optimization
07 Data Analysis 5 Level 2 pandas, matplotlib, data cleaning, grouping, visualization
08 Advanced Testing 5 Level 3 parametrize, mocking, fixtures, hypothesis, integration tests
09 Docker & Deployment 5 Level 5 Dockerfile, multi-stage builds, docker-compose, GitHub Actions
10 Django Full-Stack 5 Module 04 + Module 06 Django models, views, templates, DRF, full CRUD app
11 Package Publishing 3 Level 3 pyproject.toml, src layout, build, TestPyPI
12 Cloud Deployment 3 Module 04 + Module 09 Railway/Render, Postgres, production checklist

Suggested order by learning phase

After Level 2 (you know functions, files, basic testing): - Module 01 — Web Scraping - Module 02 — CLI Tools - Module 03 — REST APIs - Module 07 — Data Analysis

After Level 3 (you know packages, error handling, project structure): - Module 04 — FastAPI Web Apps - Module 05 — Async Python - Module 06 — Databases & ORM - Module 08 — Advanced Testing - Module 11 — Package Publishing

After Level 5 (you know architecture, reliability, CI patterns): - Module 09 — Docker & Deployment - Module 10 — Django Full-Stack - Module 12 — Cloud Deployment

Virtual environments

Each module has its own requirements.txt. Create a virtual environment per module:

cd projects/modules/01-web-scraping
python -m venv .venv
source .venv/bin/activate    # macOS/Linux
.venv\Scripts\activate       # Windows
pip install -r requirements.txt

See concepts/virtual-environments.md for a full explanation.


← Prev Home Next →