An ecommerce store built with MERN stack, and utilizes third party API's. This ecommerce store enable three main different flows or implementations:
- Buyers browse the store categories, products and brands
- Sellers or Merchants manage their own brand component
- Admins manage and control the entire store components
- features:
- Node provides the backend environment for this application
- Node middleware is used to handle requests, routes
- Mongoose schemas to model the application data
- React for displaying UI components
- Redux to manage application's state
- Redux Thunk middleware to handle asynchronous redux actions
- Add a payment method solution to enable checkout and collecting payments
- Associate each Merchant with each brand and payment account
- Build a feature to manage Merchants registrations with the ability to approve/reject by admins in a realtime implementation
- Enable Admins to edit, delete, disable a category, product or a brand
- Enable Merchants to edit, delete, disable their own brand and products
- Enable Admins and Merhcants to upload product images
Some basic Git commands are:
$ git clone git@github.com:gauravkumar34/eCommerce.git
$ cd project
$ npm install
Create .env file that include:
* MONGO_URI & JWT_SECRET
* PORT & BASE_SERVER_URL & BASE_API_URL & BASE_CLIENT_URL
* MAILCHIMP_KEY & MAILCHIMP_LIST_KEY => Mailchimp configuration
* MAILGUN_KEY & MAILGUN_DOMAIN & MAILGUN_EMAIL_SENDER => Mailgun configuration
* GOOGLE_CLIENT_ID & GOOGLE_CLIENT_SECRET & GOOGLE_CALLBACK_URL => Google Auth configuration
* FACEBOOK_CLIENT_ID & FACEBOOK_CLIENT_SECRET & FACEBOOK_CALLBACK_URL => Facebook Auth configuration
> Create a Procfile in the root directory of your application with the following command **web: npm run start:production**
$ npm run production
$ npm start
$ npm run start:production