An advanced multi-vendor e-commerce platform with seamless Paystack integration, social login, and fully functional dashboards for vendors, users, and administrators. This project empowers vendors to manage their stores, users to shop efficiently, and admins to oversee platform activities effortlessly.
- Multi-vendor Functionality: Multiple vendors can register, manage their products, and view sales reports.
- User Dashboard: Users can browse products, manage orders, and track their purchase history.
- Admin Dashboard: Manage vendors, users, orders, and platform-wide configurations.
- Secure Payment Gateway: Integrated with Paystack for secure and reliable payments.
- Social Authentication: Streamlined login experience via popular platforms like Google and Facebook.
- Performance-Focused Design: Optimized for speed and scalability.
- Installation
- Running the Application
- Environment Variables
- Application Flow
- Collaboration
- Bugs and Issues
- License
- Node.js (v16 or above)
- MongoDB (local or cloud-based like MongoDB Atlas)
- Paystack Account (for API keys)
- Google/Facebook App (for social login)
- Clone the repository:
git clone https://github.com/devalentineomonya/React-Node-E-commerce-Application.git
- Navigate to the project directory:
cd React-Node-E-commerce-Application
- Install server dependencies:
cd server npm install
- Install client dependencies:
cd ../client npm install
-
Start the backend server:
cd server npm run dev
-
Start the frontend development server:
cd ../client npm run dev
-
Open your browser and navigate to:
http://localhost:5173
Create a .env
file in both the server
and client
directories with the following keys:
MONGO_URI=<your-mongodb-connection-string>
PAYSTACK_SECRET_KEY=<your-paystack-secret-key>
JWT_SECRET=<your-jwt-secret>
GOOGLE_CLIENT_ID=<your-google-client-id>
GOOGLE_CLIENT_SECRET=<your-google-client-secret>
FACEBOOK_APP_ID=<your-facebook-app-id>
FACEBOOK_APP_SECRET=<your-facebook-app-secret>
PORT=5000
REACT_APP_PAYSTACK_PUBLIC_KEY=<your-paystack-public-key>
REACT_APP_API_BASE_URL=http://localhost:5000
- Install dependencies and set up the environment variables.
- Users can register or log in via email or social platforms.
- Vendors can add, update, and delete their products and view sales statistics.
- Administrators can manage platform-wide configurations and view reports.
- Secure payments handled via Paystack.
We welcome contributions! To contribute:
- Fork the repository.
- Create a feature branch:
git checkout -b feature/your-feature-name
- Commit your changes:
git commit -m "Add your feature description"
- Push to the branch:
git push origin feature/your-feature-name
- Create a pull request on the main repository.
If you encounter any issues, please report them using the GitHub Issues page.
Make sure to include:
- Steps to reproduce the issue.
- Expected and actual results.
- Environment details (browser, OS, etc.).
This project is licensed under the MIT License. See the LICENSE file for details.