A web application for discovering recipes based on ingredients you already have in your pantry. Create and share your own recipes, or explore a community-driven collection of recipes created by other users on the platform.
- Ingredient-Based Search: Find recipes by entering multiple ingredients separated by commas
- Cuisine Quick Search: Browse recipes by cuisine type with predefined buttons for:
- Japanese
- Italian
- American
- Asian
- European
- User Authentication: Register and login to access personalized features
- Favorites System: Save recipes you love for quick access later
- My Recipes: Create, edit, and manage your own personal recipes
- Community Recipes: Browse and view recipes created by other PantryQuest users
- Responsive Design: Works on desktop, tablet, and mobile devices
You can view the live version of PantryQuest at:
PantryQuest - Live Site
-
Clone the repository:
git clone https://github.com/itsleonbro/pantryquest.git
-
Install frontend dependencies:
cd pantryquest npm install
-
Set up frontend environment: Create a .env file in the root directory with:
VITE_API_KEY=YourSpoonacularApiKey VITE_API_URL=http://localhost:5001
-
Install backend dependencies:
cd backend npm install
-
Set up backend environment: Create a .env file in the backend directory with:
MONGODB_URI=YourMongoDBConnectionString JWT_SECRET=YourSecretKey PORT=5001 CORS_ORIGIN=http://localhost:5173
- Never commit your .env files
- Keep your API keys private
- Get your Spoonacular API key from their API Portal
- Free tier includes 150 requests per day
-
Start the backend server:
cd backend npm start
-
Start the frontend development server:
cd pantryquest npm run dev
-
Access the application at http://localhost:5173
- Frontend: React, React Router, Vite, CSS Modules, Axios
- Backend: Node.js, Express, MongoDB, JWT, bcrypt
- API: Spoonacular (150 requests/day free tier)
This project is licensed under the MIT License. See the LICENSE file for details.