Acknowledgements

Last updated: 2026-05-17

Scientific and medical inspiration

Buhlmann ZH-L16C decompression model

Decompression ceiling and tissue saturation calculations are based on the Buhlmann ZH-L16C algorithm. Gradient factor extensions follow conventions established in the technical diving community.

Surface risk score and DAN Europe research

Sentinel Dive's personalized surface risk scoring was inspired by published research from Divers Alert Network (DAN) Europe, including work on venous gas emboli, surface supersaturation gradients, and physiological risk factors for decompression sickness. Sentinel Dive is independent and is not endorsed by or affiliated with DAN Europe.

Oxygen toxicity limits

CNS% and OTU calculations are based on oxygen exposure limits published by NOAA in its Diving Manual, widely used as a reference for nitrox diving safety.

Additional diving physiology sources

General diving physiology and safe-diving concepts were informed by publicly available educational resources from organizations including DAN, PADI, and BSAC.

Android application software

libdivecomputer

LGPL v2.1. Dive computer BLE/USB communication. Copyright Jef Driesen and contributors.

Sentinel Dive JNI bridge

Open-source bridge for libdivecomputer integration: bitbucket.org/sorinluca/sentinel-dive-jni-bridge.

Android Jetpack and Jetpack Compose

Apache 2.0. UI, lifecycle, navigation, WorkManager, Room, AppCompat, and platform support libraries.

SQLCipher and AndroidX Security

Encrypted local database and AndroidKeyStore-backed secure preference storage.

Retrofit, OkHttp, and Gson

HTTP networking and JSON serialization for sync and API features.

Coil and ExifInterface

Image loading, caching, and image metadata handling for dive photos and certification files.

ML Kit Text Recognition and ZXing

Text recognition and barcode/QR handling used by certification and document workflows.

usb-serial-for-android

MIT. USB serial communication for supported dive computer import flows.

Google Play Services Location

Location services for dive site and marine condition features.

osmdroid and OSMBonusPack

OpenStreetMap rendering, map overlays, and marker clustering in the Android app.

Backend and web software

Node.js, TypeScript, Express, and Zod

Backend runtime, API framework, and schema validation.

Prisma, PostgreSQL driver, and database tooling

Database access, migrations, and typed persistence for the backend service.

Helmet, CORS, rate limiting, bcrypt, and JWT libraries

Security headers, origin policy, request throttling, password hashing, and token handling.

Multer and Sharp

Upload handling and image processing for photos and certification files.

Resend

Email delivery for verification and account workflows.

Google Generative AI SDK

Optional AI-assisted features when configured by the user or service.

Next.js, React, React DOM, React Hook Form, and React Query

Web application framework, UI runtime, forms, and server-state management.

Leaflet and React Leaflet

Interactive maps in the Web Application.

Lucide React, Sonner, Zustand, Axios, clsx, and tailwind-merge

Icons, notifications, state, API calls, and UI utility helpers.

Astro and Tailwind CSS

Static landing site and public policy pages.

Map and external data

OpenStreetMap

Map tiles, place names, and POI data are provided by OpenStreetMap contributors and are available under the Open Database License. See openstreetmap.org/copyright.

Marine and environmental data

Marine condition features may use external weather, geocoding, or map data providers to display environmental context for selected locations.

License note

This page summarizes major references and third-party components used by Sentinel Dive. Individual open-source packages remain governed by their own license files and upstream notices.