Skip to content

Yyash64/Xpress-Line

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

XpressLine - Delivery Website

Welcome to XpressLine, a robust delivery website built using React, Node.js, Express, and MongoDB. This project provides users with a seamless experience for ordering medicine, groceries, and parcel deliveries. The application supports user authentication via email and password, hashed for security, or through Google login. Additionally, phone numbers are verified using the Twilio API, ensuring a secure and reliable registration process.

Features

  1. User Authentication
    Users can register and log in using their email and password. Passwords are securely hashed and stored in the MongoDB database.

  2. Google Login
    Seamless integration with Google login for a convenient authentication process.

  3. Phone Number Verification
    Twilio API is utilized to send OTPs for phone number verification during the registration process.

  4. Medicine, Grocery, and Parcel Delivery
    Users can place orders for medicine, groceries, and parcel delivery.

  5. Parcel Delivery
    Users can enter pickup details and choose pickup and drop-off locations on a map, integrated using the MAPBOX API.

  6. Cost Calculation
    The cost of delivery is generated using a formula to provide transparency to users.

  7. Payment Gateway
    Stripe Payment API is used to visualize and demonstrate the payment gateway for a secure and smooth transaction process.

  8. Order Details
    All order details are stored in the MongoDB database for easy tracking and management.

  9. Forgot Password
    Users have the option to reset their password through a forgot password link sent via nodemailer.

  10. Grocery and Medicine Order Management
    Users can choose from various items for grocery and medicine deliveries, with the ability to add items multiple times. Redux is employed to manage item counts effectively.

Setup Instructions

  • Clone the repository to your local machine.
    git clone https://github.com/your-username/XpressLine.git

  • Install dependencies for the client and server.
    cd XpressLine/client
    npm install --legacy-peer-deps
    cd ../server
    npm install

  • Set up environment variables.
    Create a .env file in the server directory with the necessary credentials for MongoDB, Twilio, MAPBOX, and Stripe. Run the application.

  • Start the server
    cd ../server
    npm start

  • Start the client
    cd ../client
    npm start

    Open your browser and navigate to http://localhost:3000 to access XpressLine.

Technologies Used

  • React
  • Node.js
  • Express
  • MongoDB
  • Twilio API
  • MAPBOX API
  • Stripe Payment API
  • Redux
  • NodeMailer

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors