Build a Recipe App Using Streamlit
This four-session series walks you through creating a fully functional Recipe App using Python’s Streamlit framework, the Spoonacular API, and Object-Oriented Programming principles.
Session 1 (November 1 - November 14): Theory & Setup
- Overview: Introduction to Streamlit, planning the OOP structure (Ingredient, Recipe classes).
- Topics:
- Installing and configuring Streamlit
- Introduction to Spoonacular API and getting an API key
- Basic Python OOP review: classes, objects, methods
- Outcome:
- Local environment ready for Streamlit development
- Basic skeleton of the application in
app.py
Session 2 (November 15 - November 28): Implementation
- Overview: Writing the main code for the app, implementing the OOP classes and hooking them up to Streamlit.
- Topics:
- Building the
Recipe
andIngredient
classes - Capturing user input with Streamlit’s UI elements
- Making calls to the Spoonacular API and parsing JSON data
- Building the
- Outcome:
- A functional UI that lets users add ingredients and fetch recipes
- Initial version of the recipe details display
Session 3 (November 29 - December 12): Show Examples & Integrations
- Overview: Enhancing the UI and finalizing the data flow from input to recipe display.
- Topics:
- Advanced Streamlit features (e.g. images, Markdown instructions)
- Refining the OOP structure for user sessions (session state)
- Ensuring robust error handling for missing or invalid data
- Outcome:
- A polished recipe lookup page that retrieves instructions and images
- Clean code organization within the
src
directory
Session 4 (December 13 - December 26): Final Review & Deployment
- Overview: Testing, final polishing, and deploying the app on Streamlit Community Cloud.
- Topics:
- End-to-end testing of the recipe search and display flow
- Updating the README and project documentation
- Hosting on Streamlit Community Cloud and sharing links
- Outcome:
- A fully deployed, publicly accessible Streamlit app
- Confidence in your ability to build and deploy OOP-based Python apps
Referenced Repository
Check out the project’s source code on GitHub: Recipe App by Benji Mager