A technical workshop platform designed for the SQL & SQLAlchemy deep-dive. This system orchestrates the delivery, grading, and progress tracking of database exercises using a Thin Client / Thick Server architecture.
- Relational Modeling: Tables, Keys, and Normalization.
- Basic Queries: SELECT, WHERE, ORDER BY, LIMIT.
- Relationships: INNER JOIN, Multiple Joins.
- Aggregations: COUNT, SUM, AVG, GROUP BY.
- Final Challenge: E-commerce Analytics.
- Why ORM?: Object-Relational Mapping concepts.
- SQLAlchemy Basics: Engine, Session, and declarative Base.
- Models: Mapping Python classes to SQL tables.
- CRUD: Creating, Reading, Updating, and Deleting records.
- Relationships: One-to-Many and Many-to-Many in code.
- Python 3.10+
pip install poetry sqlalchemy textual httpx
make run-servermake run-client- Interactive Subjects: The TUI displays the exercise details and database schema.
- Local Work: You write your SQL or Python code in the
rendu/folder. - Automated Grading: When you click Submit, the system executes your code against a local SQLite database and verifies the results instantly.
client/: The Textual TUI application.server/: The FastAPI backend for progress tracking.data/exercises/: The workshop content (Level 00: SQL, Level 01: SQLAlchemy).data/shared/workshop.db: The pre-populated training database.