Skip to content

cyvolx/e-stampsonp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Full Stack MERN Stamps E-Commerce Application w/ Stripe

Overview :

The e-stamps project is a modern solution for the management of the philatelic activity in Tunisia.

Key Features :

  • User Registration
  • Credential authentication w/ MongoDB
  • Forgot&Reset Password System
  • User Profile Management
  • Cloudinary Avatar Image Upload
  • JSONWebToken Middleware Verification
  • Modern UI w/ Styled-Components/CSS
  • Full responsiveness for all devices
  • Server error handling w/ react-alert
  • Favorite & Cart Products System
  • Products Pagination & Filtration & Searching
  • Create a Product Review w/ Ratings & Comments
  • Stripe Payment Integration
  • Create an Order w/ shipping & payment info
  • Order Status Update System
  • Customer Support via Nodemailer
  • View Available Philatelic Events
  • Product Subscription
  • Stripe recurring payment integration
  • ChatBot Integration via Kommunicate
  • DialogFlow ChatBot Development & Training
  • Users Management
  • Products Management (CRUD)
  • Cloudinary Product Image Upload
  • Reviews Management
  • Orders Management
  • Event Management (CRUD)

Technologies and Frameworks :

Frontend :

  • React
  • Router-dom
  • Redux
  • Axios
  • Stripe-js
  • MaterialUI
  • Styled-components

Backend :

  • NodeJS
  • ExpressJS
  • Mongoose
  • Bcrypt
  • Validator
  • JSONWebToken
  • Cookie-parser
  • Cloudinary
  • Stripe
  • Nodemailer

Installation

  1. Clone the repository

    Open your terminal and run the following command to clone the repository:

    git clone https://github.com/Shaclight69/e-stampsonp.git
  2. Navigate to the project directory & Install backend's required packages

    cd e-stampsonp
    npm i

    Run the following command to start the server:

    npm run dev
  3. Navigate to the frontend directory & Install the required packages

    cd frontend
    npm i

    Run the following command to start the server:

    npm start
  4. Set up the environment variables

    Make sure to create a config.env file in backend/config directory and add appropriate variables in order to use the app. fill each field w/ your info respectively

PORT=
DB_URL=
STRIPE_API_KEY=
STRIPE_SECRET_KEY=
JWT_SECRET=
JWT_EXPIRE=
COOKIE_EXPIRE=
SMPT_SERVICE =
SMPT_MAIL=
SMPT_PASSWORD=
SMPT_HOST=
SMPT_PORT=
CLOUDINARY_NAME=
CLOUDINARY_API_KEY=
CLOUDINARY_API_SECRET=

About

A modern solution for the management of the philatelic activity in Tunisia.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors