Welcome to the Rate Your Store repository!
This full-stack web application allows users to rate and review stores, manage their own stores, and control platform-wide data as an admin.
Built with a clean interface and powerful role-based access, it ensures a smooth experience for all user types.
- 🔐 User Authentication: Secure login, registration, and logout via Devise.
- 🎯 Role-Based Access:
- Normal Users can browse and rate stores.
- Store Owners can manage their own stores.
- System Admins can manage all users, stores, and ratings.
- ⭐ Ratings: Users can rate each store once (1–5 stars) and see average ratings.
- 📊 Dashboards: Custom dashboards for each role with relevant controls and data.
- 🌐 Responsive UI: Mobile-first and clean interface using Tailwind CSS.
- Ruby on Rails (API-only)
- PostgreSQL
- Devise for authentication
- Custom Role Management
Role | Access |
---|---|
🛠 System Admin | View/delete all users, stores, and ratings |
🏪 Store Owner | Create/update/delete own stores and view their ratings |
👤 Normal User | View all stores and submit/update one rating per store |
/admin/dashboard
→ View platform stats/admin/users
→ List & delete users/admin/stores
→ List & delete stores/admin/ratings
→ View all ratings
/store_owner/dashboard
→ Manage own stores- Create, edit, delete store entries
- View average ratings
/user/dashboard
→ View all stores- See average rating
- Rate each store once (1–5 stars)





# 1. Clone the repository
git clone https://github.com/deepakgithub2001/rate-your-store.git
cd rate-your-store
# 2. Setup backend
cd rate-your-store-api
bundle install
rails db:create db:migrate db:seed
rails server
# 3. Setup frontend (in a new terminal)
cd ../rate-your-store-client
npm install
npm run dev