pull/728/merge
Biswajit-13 2 years ago committed by GitHub
commit 389015c82a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -0,0 +1,71 @@
# Jersey Store with MERN and Stripe Integration + Firebase Authentication
**Tier:** 3-Advanced
Create an e-commerce website for a Jersey Store using the MERN stack (MongoDB, Express.js, React, Node.js) and integrate Stripe for payment processing. Additionally, implement Firebase Authentication for user registration and login.
## Requirements & Constraints
1. **MERN Stack:** Develop the project using the MERN stack, which includes MongoDB for the database, Express.js for the server, React for the frontend, and Node.js for server-side logic.
2. **Stripe Integration:** Implement Stripe payment processing to allow users to make purchases securely. Ensure that payment information is handled safely.
3. **Firebase Authentication:** Integrate Firebase Authentication to manage user registration and login. Users should be able to create accounts and sign in securely.
4. **Product Listings:** Create a product catalog with details such as product name, description, price, and images. Users should be able to view products without logging in.
5. **User Cart:** Implement a shopping cart functionality that allows users to add and remove items from their cart. The cart should persist between sessions for logged-in users.
6. **Checkout Process:** Users should be able to proceed to a checkout page from their cart. During checkout, users should provide shipping and payment information.
7. **Order History:** Logged-in users should be able to view their order history, which includes past orders with order details.
8. **Admin Dashboard:** Implement an admin dashboard for managing products, including adding, editing, and removing products. Only authorized admin users should access this dashboard.
9. **Responsive Design:** Ensure that the website is responsive and works well on both desktop and mobile devices.
10. **Security:** Implement appropriate security measures to protect user data and payment information. Follow best practices for authentication and authorization.
## User Stories
1. **User Registration:** As a user, I can register for an account using my email and password.
2. **User Login:** As a user, I can log in using my registered email and password.
3. **View Products:** As a user, I can view a list of available products with details such as name, description, price, and images.
4. **Add to Cart:** As a user, I can add products to my cart while browsing.
5. **Remove from Cart:** As a user, I can remove products from my cart.
6. **View Cart:** As a user, I can view the contents of my cart, see the total price, and proceed to checkout.
7. **Checkout:** As a user, I can provide shipping information and payment details to complete a purchase.
8. **Order History:** As a user, I can view my order history, which includes past orders and order details.
9. **Admin Product Management:** As an admin, I can log in to the admin dashboard and manage products (add, edit, remove).
## Bonus Features
1. **Product Reviews:** Allow users to leave reviews and ratings for products.
2. **Product Search:** Implement a search functionality that allows users to find products easily.
3. **Discount Codes:** Support the application of discount codes during checkout.
4. **Email Notifications:** Send email confirmations and order updates to users.
5. **Social Media Sharing:** Enable users to share products on social media platforms.
## Useful Links and Resources
- [Stripe Documentation](https://stripe.com/docs)
- [Firebase Authentication Documentation](https://firebase.google.com/docs/auth)
- [React Documentation](https://reactjs.org/docs/getting-started.html)
- [MongoDB Documentation](https://docs.mongodb.com/)
- [Express.js Documentation](https://expressjs.com/)
- [Node.js Documentation](https://nodejs.org/en/docs/)
## Example Projects
[Ballers-Wardrobe](https://github.com/Biswajit-13/ballers-wardrobe)
Loading…
Cancel
Save