Skip to content

jashaneja/RateYourPlate

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

RateYourPlate

Campus food rating and review app for college eateries.

Stack

  • Client: React + Vite + React Router
  • Server: Node.js + Express + MongoDB (Mongoose) + Redis (OTP)

Setup

Prereqs: Node.js 18+, MongoDB, Redis

Server

  1. cd server
  2. cp .env.example .env and set values
  3. npm install
  4. npm run dev

Seed data

  1. cd server
  2. npm run seed

Client

  1. cd client
  2. cp .env.example .env
  3. npm install
  4. npm run dev

Dev OTP behavior

POST /auth/request-otp returns devOtp in non-production to mock SMS.

API endpoints

  • POST /auth/request-otp
  • POST /auth/verify-otp
  • POST /auth/logout
  • GET /colleges
  • GET /outlets?collegeId=...
  • GET /outlets/:id
  • GET /outlets/:id/menu
  • GET /outlets/:id/reviews
  • POST /reviews
  • GET /users/me
  • GET /menu-items/:id
  • GET /menu-items/:id/reviews

Media uploads

Uploads are stored locally in server/uploads/reviews and served from /uploads.

Assumptions

  • OTP is mocked in development.
  • Local file storage is used for photos and videos.
  • One college is seeded first, but the schema supports more.
  • Auth uses Redis-backed server sessions with an httpOnly cookie; client uses Vite proxy for same-site cookies.

About

A meal rating platform for college students.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors