/Delivery-management-system

A open source Basic Delivery Management System. Build with Nest Js framework, Remix Js full stack JavaScript React framework, Tailwind CSS, Prisma ORM, and MySQL.

Primary LanguageTypeScriptMIT LicenseMIT

React Js Next Js Remix Js Tailwind Css website development png

Delivery Management System

Demo credential

Merchant panel
email: maruffamd@gmail.com
password: 123456

Admin panel
URLpath: /admin
email: admin@gmail.com
password:123456

Package handler panel (Pickup man)
URLpath: /packagehandler
email: reyad@gmail.com
password:123456

Package handler panel (Delivery man)
URLpath: /packagehandler
email: tushar@gmail.com
password:123456

Getting Started

This instruction will get you a copy of this project up and running on your local machine

Prerequisites

You need Node JS (v18.x.x) installed on your local machine.

Installing ⚙️

Run the followning command to install all the packages:

npm run setup

Setup Environment Variable

Set the following environment variable to backend directory. Also, an example file is given with the name of .env.example:

PORT = 8000
DATABASE_URL = "mysql://root:password@localhost:3306/delivery"
JWT_SECRET = 'ANYTHING_YOU_LIKE'
BCRYPT_SALT_OR_ROUNDS = "10"

Set the following environment variable to frontend directory. Also, an example file is given with the name of .env.example:

SESSION_SECRET = "dearMj"
API_BASE_URL = "http://localhost:8000"

Database Migration 💿

Run the followning command to migrate the prisma schema:

npm run prisma:migrate

You only have to run this for only one time at the beginning of project setup

Seed Database 🌱

Run the following command to seed your database with some preset dataset. It includes delivery area info (Division, Districs, Areas), Delivery zones, Parcel pricing (for 0.5KG, 1KG, 2KG, 3KG, 4KG, 5KG), Parcel products categories, Shop products categories, a default user and admin, etc.

cd backend
npm run seed

Run 🏃🏻‍♂️

By this command your app and server will be run concurrently

npm start

An server will be run at http://localhost:8000
And frontend server will be run at http://localhost:3000

Screenshots

screencapture-localhost-3000-dashboard-2023-06-01-12_32_30 screencapture-localhost-3000-create-parcel-2023-06-01-12_39_06 screencapture-localhost-3000-parcel-list-2023-06-01-12_39_44 screencapture-localhost-3000-parcel-tracking-2023-06-01-12_38_51 screencapture-localhost-3000-payments-list-2023-06-01-12_39_52 screencapture-localhost-3000-shop-list-2023-06-01-12_39_59 screencapture-localhost-3000-shop-list-2023-06-01-12_40_11 screencapture-localhost-3000-settings-password-2023-06-01-12_40_33

Built With 🏗️👷🏻

  • NodeJs - Node.js® is an open-source, cross-platform JavaScript runtime environment.
  • NestJs - A progressive Node.js framework for building efficient, reliable and scalable server-side applications.
  • Prisma - Next-generation Node.js and TypeScript ORM
  • Remix - Remix is a full stack web framework
  • Tailwind CSS - A utility-first CSS framework packed with classes
  • Chakra UI - Chakra UI is a simple, modular and accessible component library

Credit

Authors

  • Md Maruf Ahmed - Software Engineer