Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🚚 SwiftShip Courier Management System (CMS)

A comprehensive web-based Courier Management System built with PHP, MySQL, Bootstrap 5, and the AdminLTE 3 template. SwiftShip CMS streamlines courier operations with parcel management, shipment tracking, branch/staff administration, reporting, and role-based access control.

Course: Object-Oriented Programming / Database Systems
University: FAST – National University of Computer and Emerging Sciences (FAST-NUCES)


📌 Project Overview

SwiftShip CMS provides a centralized dashboard for courier and logistics companies. Administrators and staff can manage parcels, monitor shipment statuses, maintain branch and staff records, and generate reports. Customers can track parcels by tracking number.


✨ Features

  • Authentication & Authorization — login (Admin / Staff roles), session management, logout
  • Parcel Management — create, update, view, track, and print parcels with auto-generated reference numbers
  • Shipment Tracking — real-time tracking by reference number (public track.php)
  • Branch Management — add / edit / list branches with auto-generated branch codes
  • Staff & User Management — add / edit / delete users and staff, profile avatar uploads
  • Reports — date-range shipment reports with CSV-style data export
  • Feedback — customer feedback submission and management
  • System Settings — company name, logo, contact info, address
  • Responsive UI — AdminLTE dashboard, DataTables, modals, Toastr notifications

🛠 Technologies Used

  • PHP 8 (server-side, OOP/MVC-style)
  • MySQL / MariaDB (database)
  • Bootstrap 5 + AdminLTE 3 (UI) — vendored in assets/ (no CDN required for app styles)
  • jQuery + DataTables + SweetAlert2 + Toastr + Select2 (UX)
  • XAMPP / Apache (local dev server)

📂 Project Structure

swiftship-courier-management-system/
│
├── assets/                 # Vendored AdminLTE + plugins (Bootstrap, jQuery, DataTables, Select2, Summernote, Chart.js, SweetAlert2, Toastr, ...) — REQUIRED
│     ├── dist/             # AdminLTE core CSS/JS + styles.css
│     └── plugins/          # Third-party plugins
│
├── database/
│   └── cms_db.sql          # Database schema with seed data (branches, users, parcels, etc.)
│
├── screenshots/            # Place UI screenshots here
├── 404.html
│
├── admin_class.php         # Action class: login/auth + all CRUD (users, branches, parcels, reports)
├── ajax.php                # AJAX endpoint / action dispatcher
├── classes.php             # Manage classes (level/section)
├── branch_list.php
├── contact_us.php
├── db_connect.php          # MySQL connection ($conn)
├── edit_*.php              # Edit forms (branch, parcel, result, staff, user)
├── feedback.php / feedback_list.php
├── footer.php / header.php / sidebar.php / topbar.php
├── home.php
├── index.php               # App entry point (auth-gated)
├── login.php               # Login page
├── manage_parcel_status.php
├── manage_user.php
├── new_*.php               # Create forms (branch, feedback, parcel, staff, user)
├── parcel_list.php
├── print_pdets.php         # Print parcel details
├── reports.php
├── staff_list.php
├── system_settings.php
├── track.php               # Public parcel tracking page
├── user_list.php
├── view_parcel.php
├── view_user.php
└── README.md

⚠️ The AdminLTE asset bundle (assets/) is large (~60 MB, ~1900 files) and is committed so the app is fully self-contained (works offline, no CDN dependency).


🚀 Installation

1. Clone the Repository

git clone https://github.com/basit2368/swiftship-courier-management-system.git

2. Move Project

Copy the project folder to your web server's document root.

For XAMPP (Windows):

xampp/htdocs/swiftship-courier-management-system/

3. Create Database

Open phpMyAdmin and create a database named:

cms_db

Import the schema:

database/cms_db.sql

4. Configure Database Connection

Edit db_connect.php and update credentials if necessary:

$conn = new mysqli('localhost', 'root', '', 'cms_db');

5. Start Server

Start Apache and MySQL (via XAMPP control panel).

6. Run the Project

Open your browser and visit:

http://localhost/swiftship-courier-management-system/

Default Credentials

Role Email Password
Admin admin@swiftship.com password
Staff basit@swiftship.com password

Credentials are seeded in database/cms_db.sql (passwords are MD5 hashes).


👨‍💻 User Roles

Administrator

Manage users, staff, branches, parcels, reports, and system configuration.

Staff

Update parcel status and manage assigned shipments.

Customer

Track parcels and submit feedback (public, no login required).


📈 Future Enhancements

  • Email / SMS notifications
  • QR-code parcel labels and barcode scanning
  • Payment gateway integration
  • REST API
  • Mobile application
  • Live shipment map
  • Password hashing with password_hash() (currently MD5)
  • CSRF protection on all AJAX endpoints
  • Prepared statements to prevent SQL injection

📚 Learning Outcomes

This project strengthened practical knowledge of:

  • Object-Oriented PHP
  • CRUD operations
  • MySQL database design
  • Authentication & authorization
  • Session management
  • AJAX requests
  • Responsive web design (AdminLTE)
  • Dashboard development
  • Full-stack web development

🤝 Contributing

Contributions, suggestions, and improvements are welcome.

  1. Fork the repository
  2. Create a new branch
  3. Commit your changes
  4. Push the branch
  5. Open a Pull Request

📄 License

This project is developed for educational and portfolio purposes. MIT License — see LICENSE.


👨‍🎓 Author

Abdul Basit

🎓 Bachelor of Computer Science
FAST – National University of Computer and Emerging Sciences (FAST-NUCES)

Skills

  • PHP · MySQL · JavaScript · HTML · CSS · Bootstrap · C++ · Python · Git · OpenMP · MPI

⭐ Support

If you found this project useful, please consider giving it a Star ⭐ on GitHub.

About

A web-based Courier Management System built with PHP and MySQL featuring parcel tracking, branch management, shipment management, reporting, and user role management.

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages