Andreas Kretz built this course around a single realistic project: processing invoices from an online store in real time and visualizing that data through a working dashboard, using FastAPI, Apache Kafka, Apache Spark, MongoDB, and Streamlit together.
How the pipeline comes together
- Load a Kaggle dataset, saved first as CSV and then converted to JSON
- Design and build a basic API with FastAPI, testing it with Postman
- Run Kafka and the API as Docker services, with topics configured for the data flow
- Stream data through Spark into Kafka using Spark Structured Streaming
- Set up MongoDB and Mongo-Express with Docker for storage
- Move streaming data from Kafka into MongoDB as nested JSON documents
- Build a Python API client to send data in for processing
- Build a Streamlit dashboard to review customer invoices and product details
Across 40 lessons and a companion GitHub repo, Docker experience is genuinely useful going in, since it underpins most of the environment — by the end, you'll have built one coherent streaming system rather than isolated demos of Kafka, Spark, or MongoDB on their own.