BiteBliss is a full-stack restaurant recommendation app built using the PERN stack (PostgreSQL, Express, React, Node.js). It allows users to discover, review, and recommend restaurants based on their experience.
- Restaurant Listings: View a comprehensive list of restaurants including their name, location, price range, and average rating.
- Restaurant Details: Access detailed information about each restaurant, such as reviews, location on a map, and pricing options.
- User Reviews: Leave reviews and ratings for restaurants to share your experiences with others.
- Add New Restaurants: Contribute to the platform by adding new restaurants that are not yet listed.
- Update Restaurant Information: Keep restaurant details up-to-date by editing their information when necessary.
- PostgreSQL: Database management system for storing restaurant and review data
- Express.js: Backend framework for building the RESTful API
- React.js: Frontend library for building the user interface
- Node.js: JavaScript runtime environment for running the server-side code
- Axios: Promise-based HTTP client for making API requests
- React Router: Routing library for handling navigation within the React app
- Bootstrap: Frontend framework for styling and layout
- HTML/CSS: Markup and styling languages for building the UI
-
Clone the repository: https://github.com/adityamote2205/BiteBliss.git
-
Install dependencies for the backend and frontend:
- cd BiteBliss
- cd client && npm install
- cd ../server && npm install
-
Set up the PostgreSQL database:
- Create a new database named
bitebliss
- Import the database schema from
server/database.sql
- Set up your environment variables in
server/.env
- Create a new database named
-
Start the backend server:
- cd server && npm start
-
Start the frontend development server:
- cd client && npm start
-
Access the app in your browser at
http://localhost:3000
- GET
/api/v1/restaurants
: Get a list of all restaurants - GET
/api/v1/restaurants/:id
: Get a single restaurant by ID - POST
/api/v1/restaurants
: Add a new restaurant - PUT
/api/v1/restaurants/:id
: Update an existing restaurant - DELETE
/api/v1/restaurants/:id
: Delete a restaurant by ID - POST
/api/v1/restaurants/:id/addReview
: Add a review to a restaurant
- This project was inspired by YELP.