A full stack recipe management application built with Flask and React, allowing users to browse, search, and manage their favorite recipes.
- About
- Features
- Technologies Used
- Getting Started
- Installation
- Running the Application
- Project Structure
- Contributing
This Recipe App is a full stack web application that combines a Flask backend with a React frontend to create a seamless recipe management experience. Users can explore recipes, view detailed cooking instructions, and organize their culinary favorites all in one place.
- π Browse and search through a collection of recipes
- π Filter recipes by ingredients, cuisine, or difficulty
- π View detailed recipe information including ingredients and instructions
- πΎ SQLite database for efficient data storage
- π¨ Responsive design for mobile and desktop viewing
- β‘ Fast and intuitive user interface
- React - Component-based UI library
- CSS3 - Styling and responsive design
- JavaScript - Interactive functionality
- Flask - Python web framework
- SQLite - Lightweight database
- Python - Server-side logic
- Create-React-App for React setup
- Flask virtual environment
- npm for package management
This project requires two servers running simultaneously:
- Flask server (backend) - runs on port 5000
- React server (frontend) - runs on port 3000
You'll need to have Python 3 and Node.js installed on your machine.
Make sure you have the following installed:
- Python 3.x
- Node.js and npm
- pip (Python package manager)
git clone https://github.com/CatYoung018/recipe-app.git
cd recipe-appNavigate to the /api directory and create a virtual environment:
cd api
python -m venv venvActivate the virtual environment:
On macOS/Linux:
source venv/bin/activateOn Windows:
venv\Scripts\activateInstall Python dependencies:
pip install -r requirements.txtOpen a new terminal window, navigate back to the root directory, and install React dependencies:
npm installYou'll need two terminal windows open simultaneously.
On macOS/Linux:
# Make sure you're in the root directory
npm run start-apiOn Windows:
cd api
flask run --no-debuggerYou should see output indicating the Flask server is running on http://localhost:5000
In your second terminal window (from the root directory):
npm run startThe React development server will start on http://localhost:3000, and your browser should automatically open the application.
- Use
Ctrl + Cto stop the server - Run
deactivateto exit the virtual environment
- Use
Ctrl + Cto stop the server
recipe-app/
βββ api/ # Flask backend
β βββ venv/ # Virtual environment (not tracked)
β βββ requirements.txt # Python dependencies
β βββ [Flask files]
βββ public/ # Static files
βββ src/ # React components and files
β βββ components/ # React components
β βββ App.js # Main React component
β βββ index.js # React entry point
βββ package.json # Node dependencies
βββ README.md # Project documentation
- User authentication and profiles
- Recipe rating and reviews
- Shopping list generator
- Meal planning calendar
- Recipe sharing functionality
Contributions are welcome! If you'd like to improve this project:
- Fork the repository
- Create a feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
This project is open source and available for educational purposes.
Cat Young
- GitHub: @CatYoung018
- LinkedIn: Catrillia Young
- Portfolio: catyoung018.github.io/Cat-Young-Dev
Happy Cooking! π³π¨βπ³π©βπ³
β Star this repo if you find it helpful!
