This is a MERN (MongoDB, Express.js, React.js, Node.js) stack ecommerce application that allows users to browse and purchase products online.
- Features
- Front-end Technologies
- Back-end Technologies
- Setup
- Run
- Usage
- Technologies
- Demo
- Contributing
This ecommerce application has the following features:
- Browse products and brands
- Shopping cart management
- Checkout and payment processing with Stripe
- Contact page
- User profile management
- User authentication
- User location
- Admin profile management
- Admin product management
- Order history and status tracking
- Clone the repository:
git clone https://github.com/devramod/ecommerce-app.git - Install the dependencies:
npm install
- Create a .env file in the client directory with the following variables:
REACT_APP_SERVER_DOMAIN = http://localhost:8080 REACT_APP_ADMIN_EMAIL = ram5sasanga@gmail.com - Create a .env file in the server directory with the following variables:
MONGODB_USERNAME = ram5sasanga MONGODB_PASSWORD = icecream MONGODB_URL = "mongodb+srv://ram5sasanga:icecream@cluster0.hky9m8w.mongodb.net/icecream?retryWrites=true&w=majority" STRIPE_KEY = sk_test_51MtplaGhcHbzWbPl4oSZrUE5mJGTCPA4IlZqqtGJ24MSYCIaJQEiuqqbWuyJnpX8XnHWFcV4Vh8RgBHAHd99WwPR00E7UximML CLIENT_URL = http://localhost:3000
- Run the server:
npm start - Run the client:
npm start
To use this ecommerce application, follow these steps:
- Create an account or sign in
- Browse and search for products
- Add products to your shopping cart
- Proceed to checkout and enter your shipping and payment information
- Place your order and track your order status in your account
As an admin, you can also manage products and users by logging in as an admin user. To use admin dashboard of this ecommerce application, follow these steps:
- Sign in using:
- Email address:
ram5sasanga@gmail.com - Password:
RaS123@#$
- Email address:
This ecommerce application uses the following technologies:
- React.js: front-end library
- Redux, React-redux, Redux-toolkit: state managing and centralizing
- Redux-persist: persist and rehydrate redux store
- Redux-thunk
- React-router: routing
- Recharts: display charts
- Nivo.rocks: geography chart
- Material ui: ui development
- Node.js: back-end runtime
- Express.js: back-end web framework
- MongoDB: database management
- Mongoose: database connection
- This application is deployed on Render.
- Please visit this link: https://ecommerce-app-client.onrender.com/
If you would like to contribute to this ecommerce application, feel free to submit a pull request or raise an issue.