CourierSync is a comprehensive web-based logistics management platform designed to optimize the administration of routes, vehicles, and drivers within a courier company. It features role-based dashboards (Administrator, Operator, and Driver) with secure access, an intuitive interface, and full CRUD (Create, Read, Update, Delete) functionalities across all modules.
- Comprehensive Management: Facilitates the management of users, vehicles, routes, cities, and assignments.
- Full CRUD Operations: Complete CRUD capabilities for each management module.
- Role-Based Interfaces:
- Admin: Full system management access.
- Operator: Oversight of assignments and routes, including reporting.
- Driver: Personal assignment viewing and route details.
- Secure Authentication: Protected by session-based authentication and robust role validation.
- Security Measures: Includes early detection mechanisms for SQL injection attempts and other malicious activity.
- Frontend:
- Next.js 15
- TypeScript
- TailwindCSS
- React Hook Form with Zod for form validation.
- Deployment: Vercel
- Backend:
- Spring Boot
- PostgreSQL (Database modeling and deployment on Railway)
- Design: Figma (Atomic Design)
src/
├── components/ # Reusable UI components
├── features/ # Module-specific logic (auth, users, routes, etc.)
├── app/ # Next.js routes and pages
├── hooks/ # Custom React hooks
├── lib/ # Utility functions
└── styles/ # Global style configurations| Role | Access |
|---|---|
| Admin | Full panel access, management of users, routes, vehicles, cities, assignments. |
| Operator | Routes, assignments, and reports. |
| Driver | Personal assignments and route details. |
Deployment: https://couriersync.vercel.app/login
See a demonstration of the application's navigation and role-based interactions below:
The application also integrates with mapping services to visualize routes. Here's an example of a loaded map:
- Utilizes
ProtectedRoutefor session and role-based validation. - Implements detection of malicious parameters (e.g., XSS, SQLi) from navigation inputs.
- Custom error response (error 998) for detected malicious attempts.
Developed by Claudia Rocha H.

