From ocean floor to cloud - a unified digital ecosystem for Middle East divers.
Diving in the Middle East lacked a unified digital ecosystem. Everything was fragmented.
Divers in the Red Sea and Gulf waters relied on fragmented information sources - word-of-mouth for site discovery, paper logbooks for dive records, separate weather apps for conditions, and no standardised way to review or find dive centers.
There was no centralized dive site database with safety information - coast guard contacts, SOS numbers, entry/exit points. Generic weather apps didn't report marine-specific conditions like swell height, water temperature, or underwater visibility.
The entire diving experience - from planning to logging to sharing - was scattered across disconnected tools that weren't built for divers and didn't work in Arabic.
Paper dive logs
Manual record-keeping. No digital telemetry. No way to track gear, gas mixes, or dive progression over time.
Wrong weather data
Generic weather apps don't report marine conditions - swell, water temp, visibility, current strength. Divers need ocean data, not city forecasts.
No site discovery
Scattered social media groups and word-of-mouth. No standardised database of dive sites with safety information and verified reviews.
No Arabic support
Existing dive tools were English-only. The Gulf diving community - UAE, Saudi Arabia - needed full RTL bilingual support from day one.
A decoupled full-stack platform that digitises the entire diving experience.
BlueKingdom replaces the fragmented ecosystem with a single bilingual platform - site discovery with live weather, digital dive logging with full telemetry, gear tracking, dive center directories with verified reviews, and shareable diver profiles - all backed by a comprehensive API serving both web and mobile apps.
This was a second-generation rebuild - a complete re-architecture from the ground up. The frontend and backend are fully decoupled: a Next.js 15 application consuming a Laravel API, enabling independent deployment and future mobile app support. Built by a 4-person team over 10 months.
Consumer Web App
A bilingual (EN/AR) Next.js 15 application where divers discover sites, view live weather, log dives, plan trips, review dive centers, and share profiles. Full RTL support with SSR for SEO.
RESTful API (120+ endpoints)
A comprehensive Laravel 8 API powering web and mobile apps. Handles authentication, dive data, weather aggregation, CMS, notifications, and file management with OAuth2 token auth.
Admin CMS Backend
A server-rendered admin panel with 143 Blade templates for managing dive sites, articles, user approvals, dive center directories, notifications, and app-wide settings.
Background Processing
Queue-based workers for image processing (crop, WebP, blur), bilingual PDF generation, email delivery, push notifications, and scheduled weather data refresh.
Interactive Mapping System
Mapbox GL-powered maps displaying dive sites, coast guard stations, and dive centers with custom markers, geolocation-aware distance calculations, zone-based filtering, and 8+ filterable search dimensions with range sliders.
What the system does once it's running.
Real-Time Marine Weather
Two professional weather APIs stitched together - MeteoMatics for atmospheric data, StormGlass for marine conditions. Per-site dashboards showing temperature, wind, waves, swell, UV, tides, and moonrise/moonset.
Comprehensive Dive Telemetry
Each dive log captures depth, duration, visibility, water temp, current, air tank composition (O₂/N₂/He), start/end pressure, entry method, gear, accessories, camera equipment, animals observed, buddy info, and GPS - with unique QR codes per dive.
Bilingual Content Architecture
Every piece of content exists in parallel English and Arabic. The entire frontend switches layout direction (LTR ↔ RTL), fonts, and text flow. PDFs generated in both languages. Not a translation layer - a dual-content system in every table.
Multi-Entity Geospatial Mapping
Three entity types displayed simultaneously - dive sites, coast guard stations, dive centers - with custom markers, zone filtering, and distance calculations from the user's geolocation.
Async Image Pipeline
7,500+ images processed through a queue-based pipeline: multi-size cropping (4+ sizes per image), WebP conversion, and blur generation for progressive loading. All feeding into bilingual PDF generation.
Multi-Provider Authentication
Four authentication methods - email, Google, Apple, Facebook - plus Instagram OAuth for social features. Laravel Passport for stateless API access, session auth for admin CMS. RBAC with 4 user roles.
English: Dive site detail with weather
Arabic: RTL bilingual support This is not a simple content site. It is a bilingual marine data platform with real-time telemetry.
Every feature touches multiple complexity layers - bilingual content, marine data aggregation, geospatial mapping, and rich media processing. The unit system alone is configurable across 10 measurement types (metric/imperial).
Bilingual content with full RTL - Every content field stored in both languages. Frontend switches layout direction, fonts (Montserrat/Manrope for EN, Cairo for AR), and text flow. Parallel PDF generation per language.
Real-time marine data aggregation - Two professional APIs (MeteoMatics + StormGlass) stitched into unified per-site weather dashboards. Temperature, wind, waves, swell, UV, tides, sunrise/sunset, moonrise/moonset - refreshed on schedule.
Comprehensive dive telemetry - A single dive log captures 15+ parameters including gas mixtures (O₂/N₂/He), pressure readings, gear inventories, and marine life observations. Each log generates a unique QR code.
Image processing at scale - 7,500+ images through an async pipeline: multi-size cropping, WebP conversion, and blur generation. All bilingual - feeding into both English and Arabic PDF generation.
Four audiences, one platform. Every step of the diving experience, digitised.
Recreational Divers
Discover sites, check live conditions, log dives with full telemetry, track gear, plan trips, and share achievements - with a personal dive score and public profile.
Dive Centers & Shops
List businesses in the verified directory, receive and respond to reviews, appear on interactive maps with distance calculations from nearby divers.
Content Managers
Curate dive sites via the admin CMS, publish bilingual articles, moderate reviews, manage user approvals, and configure app-wide settings across 143 admin templates.
Security Administrators
Manage access controls with full RBAC, monitor audit logs, enforce password policies with expiry and failed login tracking - enterprise-grade security posture.
2,683 commits. 467 pull requests. 10 months of active engineering.
BlueKingdom v2 was a second-generation rebuild - a complete re-architecture of an earlier platform. Built by a 4-person team with a disciplined development cadence: rapid build phase, stabilisation, and ongoing maintenance.
The project demonstrates strong stewardship signals: comprehensive deployment documentation (574 lines), user data deletion plans with rollback procedures (625 lines), a security upgrade roadmap, and a 1,195-line UI modernisation plan.
Security posture is proactive - CVE patches applied promptly, UFW + fail2ban configured, XSS sanitisation middleware deployed. Technical debt is acknowledged and documented - Laravel upgrade plans and UI revamp plans both authored and marked "Ready for Implementation."
Rapid build begins
Ground-up architecture. Next.js 15, Laravel 8, MySQL 8.0. Decoupled frontend/backend with OAuth2 API. 88% of commits landed in this phase.
Stabilisation phase
Bug fixes, performance optimisation, and feature polish. Weather integration, image pipeline scaling, and bilingual PDF generation refined.
Infrastructure recovery
Comprehensive deployment documentation, security hardening, and upgrade roadmaps authored. Technical debt formally catalogued.
Active maintenance & UI revamp
Ongoing development with "Liquid Glass" UI modernisation plan. CVE patches, dependency updates, and continued feature delivery.
When a platform handles real-time marine data, bilingual content, and geospatial mapping - the engineering has to go deep.
If your domain needs a digital ecosystem, not just a website - we should talk.
We build platforms that unify fragmented industries. The work shown here is what full-stack domain engineering looks like.