Need assistance?

Chat with me on WhatsApp

Back to Projects
Logistics & Shipping Operations SaaS screenshot 1
Web Application

Logistics & Shipping Operations SaaS

NextjsTailwindmongoDBexpressnodejsJWTpdfmakeChart.jsREST API
Source

Overview

A full logistics and shipping-operations SaaS built from the ground up, solo, to manage the entire commercial-to-operational lifecycle of container shipping: bookings, vessel rounds and voyages, capacity planning, invoicing, expenses, and financial/operational reporting. The system is organized as a layered MERN monolith — Model → Service → Controller → Routes on the backend across 23 modules, and service → hook → module → page on the frontend — deliberately kept as a single, well-organized codebase rather than split into microservices, to match the scale and team size of the product.

My Role

Sole developer end-to-end: system architecture, all 23 backend modules, database schema design, the dual-layer booking model, the reporting/aggregation engine, RBAC and permissions, and ongoing hardening — including running dependency and security audits (npm audit across backend/frontend), closing NoSQL-injection and RBAC gaps, and improving caching and query performance as real usage data grew.

Under the Hood

Modules & Features

Dual-Layer Booking System

The core architectural decision of the app: Layer 1 (ManualBooking) captures commercial estimates before a shipment is confirmed, while Layer 2 (Booking) tracks the real operational execution. Reports, the capacity engine, vessel stats, and exports all read from both layers wherever combined figures are needed, so commercial and operational views always stay in sync.

Vessel Rounds & Voyages

Manages shipping rounds and the voyages within them, with safe-delete guards that check for linked bookings, manual bookings, and expenses before allowing a round to be removed — preventing orphaned financial or operational records.

Capacity Planning Engine

A read-only aggregation engine that calculates available vs. booked capacity per voyage by combining data across bookings, manual bookings, and voyages in real time.

Invoicing & Expenses

Full invoice and expense tracking tied to rounds, voyages, and agents, feeding directly into the financial reporting layer and dashboard KPIs.

Reporting Module

Seven report types — including Round P&L, Voyage Performance, and Revenue/Expense and Booking Revenue Details reports — generated from cross-module aggregation and surfaced through a tiered dashboard widget system for quick operational insight.

Export Pipeline

Server-side PDF and Excel generation (via pdfmake and exceljs) across bookings, invoices, and reports, so operations and finance teams can pull data out of the system in the formats they already work with.

RBAC & Permissions

Granular, role-based access control gating every one of the 25 backend route files, with a checkbox-style permission model so admins can fine-tune exactly what each role can see and do.

Dashboard & Analytics

Real-time stats and fleet-utilisation widgets built with Chart.js, giving a single-glance view of bookings, revenue, and vessel activity across the business.