Welcome to GreenVille, an open-source MERN (MongoDB, Express.js, React.js, Node.js) stack ecommerce shop project. GreenVille is designed to provide a foundation for building a robust and scalable online bio Organic store. Whether you're a developer looking to learn MERN stack or an entrepreneur planning to kickstart your ecommerce venture, GreenVille is a great starting point.
- User Authentication: Secure user authentication and authorization. (Completed)
- Product Management: Easily manage products, categories, subcategories. (Completed)
- Shopping Cart: Intuitive shopping cart functionality for users. (Completed, but need some improvements)
- Payment Integration: Seamless integration with popular payment gateways. (In Progress)
- Order Management: Track and manage customer orders efficiently. (In Progress)
- Responsive Design: Mobile-friendly and responsive UI for a great user experience. (In Progress)
Make sure you have the following installed on your machine:
-
Clone the repository:
git clone https://github.com/shadowofleaf96/GreenVille-Ecommerce_Final_Project.git
-
Change into the project directory:
cd GreenVille
-
Install server dependencies:
cd server npm install
-
Install client dependencies:
cd client npm install
-
Create a
.env
file in the project root and configure your environment variables:VITE_PORT = 3000 VITE_SECRETKEY = your token secret key VITE_REFRESHSECRETLEY = your refresh token secret token VITE_STMPHOST = Mailtrap host VITE_STMPUSER = Mailtrap username VITE_URLFRONTEND = localhost:5173 VITE_URLBACKEND = localhost:3000 VITE_STMPASS = Mailtrap password VITE_SENDER = your email VITE_EXPIRATIONDATE = 120000 (you can change this) VITE_MONGOOSE = MongoDB atlas db link
-
Start the development server:
cd client npm run dev open another terminal window cd server npx nodemon
Client:
- Create an Account: Register for a new account on the GreenVille website.
- Explore Products: Browse through the available products and categories.
- Add to Cart: Add desired products to your shopping cart.
- Proceed to Checkout: Complete the purchase by providing necessary details.
- Manage Orders: View and manage your order history. Admin:
- Analytics: See sales and revenues data through dashboard.
- Add Products: Add Product from the admin menu.
- Add Users: Add admins or managers.
- Add Categories and Subcategories: Add Categories and Subcategories.
- Edit and remove existant Infos: .
We welcome contributions from the community. If you find any bugs or have suggestions for improvement, please open an issue or submit a pull request.