PurePlantParadise is a MERN Stack Based and React, node js ecommerce platform with essential commerce features. Built with React, Express.js, Node.js and MongoDB modular and admin CMS.
Before installing each frontend and backend dependencies, create a .env file on both frontend and backend.
for Backend, in .env file -
## Frontend URL
FRONTEND_URL="<REPLACE FROTEND URL>"
## for example - FRONTEND_URL = "http://localhost:5173"
## Mongodb URL
MONGODB_SERVER_KEY="<PUT MONGDB SERVER KEY>"
## Firebase Storage
API_KEY=""
AUTH_DOMAIN=""
PROJECT_ID=""
STORAGE_BUCKET=""
MESSAGING_SENDER_ID=""
APP_ID=""
## JWT SECRET Token - decide yourself secret key.
JWT_TOKEN_SECRET_MESSAGE=""
ADMIN_JWT_TOKEN_SECRET_MESSAGE=""
## Razorpay payment gateway key
RAZORPAY_API_KEY=""
RAZORPAY_SECRET_KEY=""
We need to accept firebase image storage bucket, so you have to create new project from firebase and make sure fill api key to backend .env file. Then lastly, Go to 'Rules' tabs from "Storage" and update changes -
rules_version = '2';
// Craft rules based on data in your Firestore database
// allow write: if firestore.get(
// /databases/(default)/documents/users/$(request.auth.uid)).data.isAdmin;
service firebase.storage {
match /b/{bucket}/o {
// This rule allows anyone with your Storage bucket reference to view, edit,
// and delete all data in your Storage bucket. It is useful for getting
// started, but it is configured to expire after 30 days because it
// leaves your app open to attackers. At that time, all client
// requests to your Storage bucket will be denied.
//
// Make sure to write security rules for your app before that time, or else
// all client requests to your Storage bucket will be denied until you Update
// your rules
match /{allPaths=**} {
allow read, write: if request.time < timestamp.date(2035, 5, 14);
}
}
}
for Frontend, in .env.local file-
VITE_BACKEND="<BACKEND URL>"
BACKEND="<BACKEND URL>"
## Make sure replace your backend url
VITE_AUTH_API_URL="<BACKEND URL>/auth/"
VITE_ADMIN_AUTH_API_URL="<BACKEND URL>/admin/"
## if you are planning to build, then change to true
VITE_PRODUCTION_MODE=false
## Frontend url
VITE_URL=""
you need install npm dependecy in each folder(frontend and backend).
npm install
if you want to start local,
Backend (make sure the current path should be inside of backend) -
npm run start
make sure backend server should be keep running.
Frontend (make sure the current path should be inside of frontend)-
npm run dev
Explore our demo store.
Admin Demo user:Email: [email protected]
Password: demo@12345
Email: [email protected]
Password: demo7890
If you like my work, feel free to:
- ⭐ this repository. It helps.
You can ask questions, and participate in discussions about EverShop-related topics in the EverShop Discord channel.
If you see an error message or run into an issue, please create bug report.