I built and deployed an eCommerce site using the MERN stack. The site has features such as user accounts, login security, shopping baskets, orders, profiles, checkout, PayPal gateways, and administrator privileges. The site is secure and uses a variety of server and client-side security measures to protect user data. The site is also responsive and can be viewed on any device.
- Built an eCommerce site using the MERN stack and other helper packages, such as Redux, MongoDB Compass, and Object data mapping.
- Used JWT token-based authentication and password hashing to secure the site.
- Developed API endpoints for front-end communication.
- Created a responsive design with a great-looking UI using Chakra UI.
- Used Formik and Yup for form validation.
- Created reusable form components.
- Handled errors via Yup validators in the frontend and middleware and controllers in the backend.
- Created orders from the shopping basket.
- Accepted payments via PayPal.
- Used a Git repository for version control.
- Deployed the site with Render.
- Created dynamic pages for mobile and larger screens.
Make sure to install packages at the root level and in the client level.
npm install
Make sure at your root level you have a .env file to hold your environment variables.
Five environmental variables are required.
NODE_ENV=production
PAYPAL_CLIENT_ID (This requires you access your API within your PayPal developer account)
PORT=5000
TOKEN_SECRET (Can be anything random. This is your JWT secret key)