An online grocery store | e-commerce
I am a huge enthusiast of open source. Contributing to open source is a fantastic way to learn and grow. Making open source contributions will require you to have been exposed to a few important concepts, practices, and transferable skills:
- Version control
- Working with tickets & issues
- Working with other developers
- Creating pull requests
- Experiencing a code review process
- Setting up a local development environment
- Contributing code to a pre-existing codebase
Freshbey is an e-commerce platform where you can order grocery items. This project is built for a client but he not paid the said amount. So, after that I make this project as open source.
As of now, Freshbey is built using MERN stack. Additionally React Bootstrap is used for styling and React Redux is used for state management.
The easiest and quickest way to get the default project up and running locally is to clone the repo:
git clone https://github.com/roopeshsn/freshbey.git
We use ECMAScript Modules in the backend in this project. Be sure to have at least Node v14.6+ or you will need to add the "--experimental-modules" flag.
Also, when importing a file (not a package), be sure to add .js at the end or you will get a "module not found" error
Create a .env file in then root and add the following
NODE_ENV = production
PORT = 5000
MONGODB_URI = mongodb+srv://admin:[email protected]/myFirstDatabase?retryWrites=true&w=majoritymyFirstDatabase?retryWrites=true&w=majority
JWT_SECRET = roopeshthemass123@
EMAIL_USERNAME = 2ebcd460696ef8
EMAIL_PASSWORD = cb7e54cd13fa8b
EMAIL_HOST = smtp.mailtrap.io
EMAIL_PORT = 2525
npm install
cd frontend
npm install
# Run frontend (:3000) & backend (:5000)
npm run dev
# Run backend only
npm run server
Mailtrap (A Email Sandbox Service) is used as email inbox to reset password
Project is deployed on Heroku
git push heroku master
The above command is used to deploy the project on heroku
You can use the following commands to seed the database with some sample users and products as well as destroy all data
# Import data
npm run data:import
# Destroy data
npm run data:destroy
Please check out CONTRIBUTING.md for more information regarding how to contribute.
MIT, see LICENSE