TL;DR
Marina Master is a comprehensive SaaS platform for marina and harbor management, built with Next.js, Fastify, PostgreSQL, and Docker. It covers tenant management, berth assignments, contract tracking, automated invoicing, WhatsApp Business API communication, GoBD-compliant audit trails, and AI-powered contract parsing — replacing the spreadsheet chaos that still defines most German marinas.
Modern Harbor Management for the Digital Age
Managing a marina is a surprisingly complex operation. Tenants, boats, berths, contracts, invoices, electricity meters, keys, parking spaces, insurance documents, weather conditions, and water levels — all need to be tracked, billed, and communicated. Most marinas in Germany still rely on a patchwork of spreadsheets, paper contracts, and manual invoicing that creates operational chaos, missed payments, and compliance risks.
Marina Master is a comprehensive SaaS platform designed to digitize every aspect of marina management. From tenant onboarding and AI-powered contract parsing to automated invoicing, WhatsApp Business API integration, and audit-proof revision tracking, it delivers a complete operational backbone for harbor operators. Built with a modern tech stack (Next.js, Fastify, PostgreSQL, Docker) and a Nordic-inspired design language, Marina Master transforms how marinas run their day-to-day operations.
„Upload a paper contract, and AI extracts the tenant, boat, berth, and payment terms. That is the starting point for a fully automated marina operation.“
The Problem
Marina operators face a unique combination of operational, financial, and regulatory challenges:
- Paper-based contracts: Most marinas have years of paper contracts that must be manually transcribed into any new system — a prohibitively time-consuming task
- Manual invoicing: Creating, sending, and tracking invoices for hundreds of berth tenants is error-prone and slow
- No centralized view: Tenant information, boat details, contract terms, payment status, and berth assignments live in disconnected systems
- Communication gaps: Notifying tenants about contract renewals, payment reminders, or marina events requires individual emails or phone calls
- Compliance requirements: German regulatory standards (GoBD) require immutable audit trails for all financial transactions
- No tenant self-service: Tenants cannot view their own contracts, invoices, or documents online
- Multi-marina complexity: Operators managing multiple marinas need consolidated views and cross-marina reporting
The Solution
Marina Master addresses the entire marina management lifecycle through an integrated platform. The core CRUD operations for tenants, contracts, berths, and invoices are already fully operational, with an ambitious roadmap covering AI contract parsing, automated PDF generation, email/WhatsApp integration, and a tenant self-service portal.
A standout feature is the AI-powered contract upload: operators scan or photograph existing paper contracts, upload the PDF, and Claude AI extracts tenant details, boat specifications, berth assignments, and payment terms automatically — creating database records without manual data entry.
Key Features
| Feature | Status | Description |
|---|---|---|
| Tenant Management | Live | Full CRUD with German profiles, boat details, and contact information |
| Contract Management | Live | Create, view, edit contracts with boat and berth associations |
| Berth Management | Live | 120+ berths across sections (A, B, C, D) with dimensions and status tracking |
| Invoice Management | Live | Generate invoices with payment status tracking (paid, outstanding, overdue) |
| Multi-Marina Support | Live | Database architecture supports multiple marinas per organization |
| User Roles | Live | Role-based access: ORG_ADMIN, SUPER_ADMIN with JWT authentication |
| Document Management | Live | Paperless-NGX integration for document storage and categorization |
| Audit System | Live | Immutable audit logs with revision history, change diffs, and compliance reports (GoBD/SOX/GDPR) |
| WhatsApp Integration | Live | WhatsApp Business Cloud API with 7 templates, rate limiting, conversation threading, and webhook support |
| AI Contract Parsing | Roadmap | Upload PDF contracts and auto-create tenant/berth/contract records using Claude AI |
| PDF Generation | Roadmap | Generate professional PDF contracts, invoices, and data sheets |
| Dashboard & KPIs | Roadmap | Visual analytics with charts, occupancy rates, revenue tracking |
Conclusion
Marina Master represents a comprehensive approach to marina digitization — not just moving paper to screen, but fundamentally automating the workflows that consume marina operators‘ time. The combination of AI-powered contract parsing, automated WhatsApp communication, audit-proof financial tracking, and a modern responsive interface creates a platform that can transform marina operations from day one. With multi-marina support, role-based access, and Docker-based deployment, it scales from a single harbor to a regional marina network. For harbor operators looking to modernize, Marina Master provides the foundation for a fully digital, compliant, and efficient operation.
What I Learned
Marina Master is one of the most domain-rich projects I have built. The marina management domain sits at the intersection of property management, maritime regulation, financial compliance, and customer communication — and each area had surprises.
German Compliance Requirements Are Non-Trivial
GoBD (Grundsätze zur ordnungsgemäßen Führung und Aufbewahrung von Büchern) requires that financial records be immutable, traceable, and retained for 10 years. This isn’t just a backup requirement — it means invoice records cannot be deleted or silently edited. The audit system stores every change as a new revision with the previous state preserved, the user who made the change, and a timestamp. Designing this from the start was essential; retrofitting immutability into an existing data model is extremely painful.
AI Contract Parsing: Impressive in Demo, Nuanced in Production
Having Claude AI extract tenant details, boat specifications, and contract terms from a scanned PDF sounds like magic — and in ideal conditions, it is. Real marina contracts, however, vary wildly: some are typed, some are handwritten, some use non-standard terminology, some mix German legalese with practical notes. The production AI parsing needs confidence scores and a human review step for low-confidence extractions. Designing the UX so operators review and confirm AI-extracted data (rather than it being automatically committed) was the right call for a billing-critical system.
WhatsApp Business Cloud API vs. Web.js
Marina Master uses the official WhatsApp Business Cloud API rather than the Web.js wrapper used in my other projects. The official API has real advantages at scale: multi-agent support, message templates, official delivery receipts, and no risk of account bans. The tradeoff is the approval process and message template pre-approval. For a SaaS platform serving multiple marinas, the official API is the right choice; for a personal project needing quick WhatsApp integration, Web.js remains pragmatic.
Multi-Tenancy Architecture Early
Marina Master was designed from day one to support multiple marinas per organization (multi-tenancy at the organization level, with marina-level data isolation). This adds complexity — every database query must scope to the correct marina, every API endpoint must validate marina membership, every report must aggregate correctly. But retrofitting multi-tenancy into a single-tenant system later is an architectural nightmare. The lesson: if your SaaS will ever serve multiple customers, design for it from the start.
Berth Management Is a Spatial Problem
Managing 120+ berths across sections A, B, C, and D seems like a simple CRUD problem until you realize operators think spatially — they want to see the marina as a map, not a list. The current implementation tracks berth metadata (section, number, dimensions, status), but the roadmap includes a visual berth map that lets operators assign tenants by clicking on a berth in a graphical harbor layout. Getting the data model right upfront — treating berths as spatial entities with geometry, not just named slots — makes that future feature tractable.