Skip to content

Learnathon-By-Geeky-Solutions/byte-breeze

Repository files navigation

LifeRide Banner

📦Smart Parcel Delivery System

Java Spring Boot PostgreSQL Hibernate GitHub Projects JUnit Mockito Docker Azure OpenTelemetry


DeliveryParcel.me - Live


Observability Traces Metrics Dashboard Monitoring Logs


WBS Docs Diagrams Project Board Wiki GitHub Issues


📊 SonarCloud Analysis

Quality Gate Status Lines of Code Coverage Bugs


📑 Table of Contents

Click to expand/collapse

🚀 Live Deployment

🌐 Production Environment (Azure VM - IAAS)

Azure Production

The production environment is hosted on Azure VM as an IAAS solution for optimal performance and reliability.

🛠️ Development Environment (Render - PAAS)

Render Development

The development environment is hosted on Render as a PAAS solution for testing and development purposes.

🔐 Portal Access Credentials

Portal URL Email Password
Customer Login user2@gmail.com @Padma&1953
Rider Login amirider@gmail.com @Amirider&1953
Admin Login Access Restricted Access Restricted

Note: Production credentials are restricted for security reasons.

use_case_diagram

Landing Page


👥 Team Members & Mentor

Role GitHub Profile
Team Leader Suvash Kumar Sumon
Member Khairul Basar
Member Tofaal
Mentor Jamilxt

🎯 Project Introduction

Smart Parcel Delivery System

A tech-driven, role-based parcel delivery platform designed to address the modern challenges of intra-city logistics. Built to streamline the delivery process for customers, e-commerce sellers, and delivery riders, with powerful admin tools and real-time tracking capabilities.

delivery system flow
delivery system flow

Main flow of parcel delivery system


🚀 Project Context

With rapid urbanization and the e-commerce boom, the demand for reliable, efficient, and transparent parcel delivery services has skyrocketed. Traditional systems fall short—facing issues like delays, poor tracking, and ineffective communication.

Smart Parcel Delivery System bridges this gap through a robust, GPS-enabled, user-friendly solution that offers:

  • Real-time tracking
  • Role-specific dashboards
  • Transparent communication
  • Seamless delivery management

🔑 Key Features

👤 Customer (P2P)

  • 📍 User-Friendly Booking – Set pickup/drop-off locations and parcel details
  • 🧱 Product Categorization – Choose from predefined categories with limits
  • 🔔 Order Notifications – Updates when a rider accepts/completes a delivery
  • 📡 Real-Time Tracking – GPS tracking for live parcel status
  • Feedback System – Rate and review rider performance
  • 🤝 Secure Handover – Only authenticated riders can receive parcels

🛒 E-Commerce Seller (B2C)

  • 📊 Seller Dashboard – Track deliveries and rider assignments
  • 🔔 Order Notifications – Instant alerts on delivery progress
  • 📡 Live Tracking – Monitor each parcel in real time
  • 📈 Analytics & Reports – View rider performance, success rates
  • Feedback System – Rate and review services
  • 🤝 Secure Handover – Verified handover to rider

🛵 Delivery Rider

  • 📶 Rider Status – Set availability status
  • 🔔 Delivery Alerts – Nearby requests via push notifications
  • 🗺️ Route Navigation – Optimized GPS-based routing
  • 📦 Order Management – Accept, manage, and complete deliveries
  • Performance Reviews – Access feedback and ratings
  • 🤝 Secure Delivery – Handover only to verified recipients
  • 💵 Payment – Receive payment after each delivery

🛠️ System Admin

  • 👥 User & Delivery Management – Oversee accounts and operations
  • 📊 Analytics Dashboard – Insights into system and rider efficiency
  • 🎯 Parcel & Pricing Control – Define pricing models and limits
  • 🛡️ Fraud Detection – Monitor and prevent suspicious activity

🏗 System Design & Architecture

Architecture Diagram

delivery system flow

High level architecture of our system

UML Diagram

Use Case Diagram

The main actors in our system are:

  • Customer - Books parcels and tracks deliveries.
  • Delivery Rider - Accepts and delivers parcels.
  • System Admin - Manages users and monitors system activities.
use_case_diagram

Use case diagram of our system

Activity Diagram

Parcel Booking Process by Customer(sender):


Activity Diagram for Customer(sender)

Parcel Delivery Process By Rider:


Activity Diagram for Delivery Rider

Class Diagram

Key Classes:
  1. User (Base class for Customer, Seller, Rider, and Admin).
  2. Customer (Send the parcel delivery request)
  3. Rider (Delivery the parcel from sender to receiver)
  4. Admin (Manages the system and parcel)
  5. Parcel (Represents a Parcel to be delivered).
  6. Payment (Handles transactions for sending a parcel ).
  7. Pricing Rule (Set the price for a specific parcel).
  8. Review (Handles customer ratings and feedback).

Parcel Delivery Class Diagram
Class Diagram of System

Class diagram convention
Type of UML relationship sign

Database Diagram

Class diagram convention
Initial ERD of our system

The Entity-Relationship (ER) diagram above visually represents the database schema and relationships between tables.

🧰 Tech Stack

Layer Technology
Frontend React.js, Thymeleaf
Styling HTML, Tailwind CSS
Backend Java, Spring Boot
Databse Versioning Flyway
Authentication Spring Security, JWT
Database PostgreSQL (Relational), Hibernate ORM
APIs RESTful APIs, Spring MVC
Testing JUnit (Unit),Mockito, JMeter (Load)
DevOps Azure (IAAS Deployment), Render (PAAS Deployment), GitHub Actions (CI/CD)
Version Control Git, GitHub
Observability OpenTelemetry, JaegerUI, Prometheus, Grafana, Loki
Project Management Github Project

📁 Project Structure (Simplified)

├───config
├───controller
├───dto
│   ├───paymentapiresponse
│   ├───request
│   └───response
├───enums
├───exception
│   └───custom
├───mapper
├───model
├───repository
├───security
├───service
└───util

🧱 Released Features (MVP)

Class diagram convention
Released features of our system in first MVP


🛠️ Getting Started

  1. Ensure Prerequisites: Ensure your system have those running:
Tool Required Version Download Link
Java JDK 17+ Download JDK
Gradle Wrapper included N/A (uses ./gradlew)
Git Any Download
Docker Any Download
  1. Clone Project: Clone the project to your local machine using SSH:
git clone git@github.com:Learnathon-By-Geeky-Solutions/byte-breeze.git
  1. Nevigate to Directory: Navigate to the Project Directory:
cd byte-breeze
  1. Install Dependencies: Use Gradle Wrapper to install dependencies and build the application:
./gradlew build --refresh-dependencies

Make sure you have executable permission on gradlew. If not, run:

chmod +x gradlew
  1. Run docker-compose to start the PostgreSQL database:
docker-compose up -d
  1. Run: Run the Application by this command:
./gradlew bootRun

The app will start on the default port: http://localhost:8080

Resources

About

Repository for team Byte Breeze

Topics

Resources

License

Contributing

Stars

Watchers

Forks

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •  

Languages