Click to expand/collapse
|
||||||||||||||||
Role | GitHub Profile |
---|---|
Team Leader | Suvash Kumar Sumon |
Member | Khairul Basar |
Member | Tofaal |
Mentor | Jamilxt |
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.
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
- 📍 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
- 📊 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
- 📶 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
- 👥 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
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.
Activity Diagram for Customer(sender)
Activity Diagram for Delivery Rider
- User (Base class for Customer, Seller, Rider, and Admin).
- Customer (Send the parcel delivery request)
- Rider (Delivery the parcel from sender to receiver)
- Admin (Manages the system and parcel)
- Parcel (Represents a Parcel to be delivered).
- Payment (Handles transactions for sending a parcel ).
- Pricing Rule (Set the price for a specific parcel).
- Review (Handles customer ratings and feedback).
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 |
├───config
├───controller
├───dto
│ ├───paymentapiresponse
│ ├───request
│ └───response
├───enums
├───exception
│ └───custom
├───mapper
├───model
├───repository
├───security
├───service
└───util
Released features of our system in first MVP
- 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 |
- Clone Project: Clone the project to your local machine using SSH:
git clone git@github.com:Learnathon-By-Geeky-Solutions/byte-breeze.git
- Nevigate to Directory: Navigate to the Project Directory:
cd byte-breeze
- 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
- Run docker-compose to start the PostgreSQL database:
docker-compose up -d
- Run: Run the Application by this command:
./gradlew bootRun
The app will start on the default port: http://localhost:8080