Add this :
AUTHENTICATION & ROLE ACCESS:
Build a role-based authentication system using Firebase.
User roles:
1. super_admin
2. store_owner
3. customer
4. guest
Requirements:
- Main app must NOT show Super Admin login publicly.
- Public users should only see:
• Continue as Guest
• Customer Login (Google)
• Store Owner Login (Google)
- Create a hidden admin route:
/admin
Example:
myapp.com/admin
- Only these Gmail accounts must have "super_admin" access:
- No other Gmail account should ever receive super_admin access.
- If any other user tries to access /admin, block access and redirect them.
- After Google login, Firebase must verify the Gmail account.
- If Gmail matches one of the approved super admin accounts:
→ Redirect to Super Admin Dashboard
- If Gmail belongs to a store owner:
→ Redirect to Store Owner Dashboard
- If Gmail belongs to a customer:
→ Redirect to Customer Home
- Guest users:
→ Redirect to Guest Shopping Mode
- Protect all admin routes and admin dashboard pages.
- Unauthorized users must never access admin pages even if they manually type /admin in browser URL.
_______________
•super admin dashboard changes:
- remove subscription & upgrade plan
1. analytics:
- top visiting store according to customer.
- customer growth.
- most use function of app by Store.
- add features that help me to monitor th stores for app improvement.
2. Financials:
- maintanence charge & due date with paid or not
- total earnings from particular store.
3. Notifications:
- new login:- Store/ customer details.
- complaints
- maintenance charge due date reminder from specific store.
_____________
• store owner dashboard:
1. dashboard home:
- today's sale / weekly sale: after clicking on this widget it will switch between today's sale and weekly sale.
- customer visits Today/ weekly : same switch functions sale.
2. Product manager:
- add, edit, delete, stack, add category, etc.
- compress image should have customisation while uploading on claudinary like want 50% 60% compress.
→ order management: on /off option. Plus delivery charge on/ff , if on then input charge number rupees.
- accept order→packed order→ mark delivered : make it practical tracking system.
→ customer management:
- reviews
- total number of customer visits.
- request of category or product by customer, even for for out of stack product.
- customer inquiry
- add needed features that store owner want in real life.
→offers:
- create offer & description of offer like festival offer ( diwali, eid etc).
___________
• customer dashboard:
- continue as guest or login with google.
- select store ( akso show which type of store it is & what categories they have in short info) or explore all items.
- new arrivals, trending item, categories
- also show new added categories by store owner to the customer automatically
- search, filter, wishlist, cart, reviews, ratings.
- cod is available or not. If available than return is available or not.
- request for order.
- if user want to buy item , he/she will buy on what's app button than it will navigate to WhatsApp contact of store along with the details of selected product link or URL .
- remove razorpay integration for now, dont add anything that is connected with razorpay.
→ order tracking:
- order request is confirmed or not.
- packed → shipped → delivered.
__________
★ add these features:
1 - store owner should have their own URL for their Store. If they sends to any customer then their customer visit to only their store product.
2 - for every product have a specific link to share. If user click on that link it will navigate to that specific product from specific Store.
3- store owner should have Google map store address link. Store owner can save the link into their profile . The link automatically show in every description of product to their customer or user can check in info of the store owner.