The original project used a neon postgres database, this version uses a json file to simulate a database. the orignal project's repo can be found here
The features will remain the same, minus the following mechanics:
- User authentication
- User profiles
- User follow mechanics
- User recipe collections
- Scripts, we now have a npm run setup to run the setup script that will create the json file if it doesn't exist, and populate the database with the data.
- You will need to run the python script to populate the json file, this can be found in the root of the repo. then place it inside the data folder(I have done this already so technically you don't need to worry about this unless you want to use different data)
A modern recipe management application that lets users discover, create, and share recipes. Built with Node.js, Express, and PostgreSQL.
-
Recipe Management
- Create and share recipes
- Browse recipes by categories
- Save favorite recipes
- Filter by meal type, ingredients, and dietary preferences
-
User Features
- User profiles with saved recipes
- Follow other chefs
- View cooking history
- Personal recipe collections
-
Categories
- Meal Types (Breakfast, Lunch, Dinner)
- Main Ingredients (Beef, Chicken, Lamb, Pork, Seafood)
- Course Types (Starter, Side, Dessert)
- Dish Types (Pasta)
- Dietary (Vegetarian, Vegan)
- Clone the repository
git clone https://github.com/AD-archer/FoodFinder-Recipeapp.git
cd FoodFinder-Recipeapp- Install dependencies
npm install- Create a
.envfile in the root directory with:
DATABASE_URL=your_postgresql_url
SESSION_SECRET=your_session_secret
NODE_ENV=development
PORT=2555
- Start the development server
npm run devInitialize the database with categories:
node seeders/categorySeeder.jsOr import sample recipes from MealDB:
node seedMealDB.jsIf recipe images don't load properly, it might be due to CORS restrictions. The application uses images from TheMealDB API, which may be blocked by some browsers. Try using a browser extension that disables CORS restrictions for development purposes.
This project is licensed under the MIT License - see the LICENSE file for details.
- A^2
- TheMealDB for recipe data
- Bootstrap for UI components
- Express.js community