Skip to content

Book Recommender App is a full-stack application that allows users to sign up, log in, add and rate books, and view book recommendations. It features a Node.js/Express backend with MongoDB and a modern React Native (Expo) mobile frontend.

Notifications You must be signed in to change notification settings

Milan323-debug/react-native-bookmon

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Book Recommender App

A full-stack Book Recommendation application with a Node.js/Express backend and a React Native (Expo) mobile frontend. Users can sign up, log in, add books, rate them, and view recommendations.


📱 App Interface Screenshots


Sign Up Screen

Login Screen

Profile Screen

Profile Screen(With Recomended Books)

Create Book

Home Page

Features

  • User authentication (signup, login, logout)
  • Add, view, and rate books
  • Book images and captions
  • User profile management
  • Book ratings (1-5 stars)
  • Cloudinary integration for image uploads
  • Modern mobile UI with Expo

Tech Stack

  • Backend: Node.js, Express, MongoDB, Mongoose
  • Frontend: React Native (Expo)
  • Authentication: JWT
  • Image Uploads: Cloudinary

Project Structure

BOOKRECOMENDOR/
├── backend/
│   ├── package.json
│   └── src/
│       ├── index.js
│       ├── lib/
│       ├── middleware/
│       ├── models/
│       └── routes/
└── mobile/
    ├── app.json
    ├── package.json
    ├── app/
    ├── assets/
    ├── components/
    ├── constants/
    ├── lib/
    └── store/

Getting Started

Backend

  1. Install dependencies:
    cd backend
    npm install
  2. Set up a .env file with your MongoDB URI, JWT secret, and Cloudinary credentials.
  3. Start the server:
    npm start

Mobile App

  1. Install dependencies:
    cd mobile
    npm install
  2. Start the Expo development server:
    npx expo start
  3. Use the Expo Go app or an emulator to run the app on your device.

API Endpoints (Backend)

  • POST /api/auth/signup — Register a new user
  • POST /api/auth/login — User login
  • POST /api/books — Add a new book (auth required)
  • GET /api/books — List all books
  • GET /api/books/:id — Get book details
  • PUT /api/books/:id — Update a book (auth required)
  • DELETE /api/books/:id — Delete a book (auth required)

Book Model Example

{
  title: String, // required, unique
  caption: String, // required, unique
  image: String, // required, unique (Cloudinary URL)
  rating: Number, // required, min: 1, max: 5
  user: ObjectId, // reference to User
}

License

This project is for educational purposes.

About

Book Recommender App is a full-stack application that allows users to sign up, log in, add and rate books, and view book recommendations. It features a Node.js/Express backend with MongoDB and a modern React Native (Expo) mobile frontend.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published