A full-stack web application that allows users to browse, add, and manage book recommendations. The app features a React frontend, a Node.js/Express backend, and MongoDB for database management.
- View a list of recommended books
- Add new books with details like title, author, genre, and rating
- Connects to a MongoDB cloud database for persistent storage
- Responsive and clean UI built with Material UI (MUI)
book-recommendation-app/
βββ backend/
β βββ models/
β β βββ Book.js
β βββ routes/
β β βββ bookRoutes.js
β βββ server.js
βββ frontend/
β βββ src/
β β βββ components/
β β β βββ AddBook.js
β β β βββ BookList.js
β β βββ services/
β β β βββ bookService.js
β β βββ App.js
β β βββ index.js
βββ package.json
βββ README.md
βββ .gitignore
- Frontend: React, Axios, Material UI
- Backend: Node.js, Express, Mongoose
- Database: MongoDB (Cloud)
- Tools: Nodemon, Dotenv
git clone https://github.com/your-username/book-recommendation-app.git
cd book-recommendation-appcd backend
npm install- Create a
.envfile in the backend directory:
MONGO_URI=your_mongodb_cloud_uri- Start the backend server:
npm run devcd ../frontend
npm install
npm start- Frontend:
http://localhost:3000 - Backend API:
http://localhost:5000/api/books
GET /api/books- Fetch all booksPOST /api/books- Add a new book
- Implement user authentication (Sign up/Login)
- Add search and filter functionality
- Enable book rating and reviews
- Improve UI/UX with more advanced design
This project is open-source and available under the MIT License.