Licenses & Attribution
Portside and its companion apps are built with open-source software and community-maintained data. Here is every project we rely on, credited with its license and source.
Portside
Nautical logbook for mariners · Android app
MapLibre GL Native 13.6.1
Map rendering engine
BSD 2-Clause License. Free for commercial and personal use. Renders all map layers, tiles, and overlays inside the app.
OpenStreetMap contributors
Map data
© OpenStreetMap contributors. Map data licensed under the Open Database License (ODbL) 1.0. The ODbL requires attribution, which is present in the app's Legal & Licenses sheet and on this page.
OpenSeaMap
Seamark & harbour data
Seamark and harbour data © OpenSeaMap contributors. Chart tiles licensed under Creative Commons Attribution-ShareAlike 2.0 (CC BY-SA 2.0). Used to render nautical markers, buoys, lights, and harbour overlays.
OpenFreeMap
Vector tile hosting
Free, open-source map tile hosting. Serves the vector tiles used for both online and offline map rendering. No attribution required, credited as courtesy.
OpenMapTiles
Vector tile schema
Open-source schema used for the underlying vector tile format. © OpenMapTiles.
Supabase Kotlin 3.1.4
Authentication, database & edge functions
MIT License. Used for optional Cloud Sync (auth, PostgREST queries, edge function calls). Only active when you sign in — no calls are made when using Portside offline.
Ktor Client 3.1.3
HTTP client for Android
Apache License 2.0. Underlying HTTP engine used by the Supabase client and offline map downloader.
kotlinx.serialization
JSON serialization
Apache License 2.0. Used for parsing and generating JSON for vessel records, sync payloads, and file exports.
AndroidX
Android support libraries
Apache License 2.0. A subset of AndroidX is used for activity, lifecycle, core utilities, and saved-state handling. Full list available in the app's Legal & Licenses sheet.
Kotlin Standard Library
Language runtime
Apache License 2.0. Portside is written in Kotlin.
Bonded Stores
Bonded store accounting · Android app
AndroidX & Jetpack Compose
UI framework
Apache License 2.0. Compose BOM 2024.09.02. The following libraries are used:
- androidx.compose.ui — core UI
- androidx.compose.material3 — Material Design 3
- androidx.compose.material:material-icons-extended — icon set
- androidx.activity:activity-compose — Activity integration
- androidx.lifecycle:lifecycle-viewmodel-compose — state
- androidx.lifecycle:lifecycle-runtime-compose — lifecycle
Kotlin & kotlinx
Language & serialization
- Kotlin Standard Library — Apache 2.0
- kotlinx.serialization-json 1.7.3 — Apache 2.0
Android platform APIs
PDF, file I/O
PDF generation uses the Android platform's built-in PdfDocument API. CSV, JSON export, and file I/O use standard Android SDK and Java/Kotlin standard library features. No third-party PDF, CSV, or file-handling libraries are bundled.
Sea Wages
Wage tracker for seafarers · No third-party libraries
No third-party libraries
Vanilla HTML, CSS, JavaScript
Sea Wages is written in vanilla HTML, CSS, and JavaScript — no framework, no runtime, no build step. It uses only:
- Browser localStorage — a standard web platform API for on-device storage
- System fonts — no bundled webfonts
- Hand-authored inline SVG icons — not from any icon library
When packaged for Android, it runs in a native shell that provides status bar integration through the platform APIs. No third-party libraries are bundled beyond the platform itself.
LSA & FFE
Life Saving Appliances & Fire Fighting register · No third-party libraries
No third-party libraries
Built from scratch for offline use
LSA & FFE is built for offline operation and uses only Android platform APIs. There are no bundled third-party libraries, no advertising SDKs, and no analytics. Everything runs locally on your device.
The app has no internet permission — it genuinely cannot connect to any network.
Android platform APIs
File I/O, JSON, UI
Local storage, JSON serialization for export/import, and all UI rendering use standard Android SDK and Java/Kotlin standard library features. No third-party file-handling, JSON, or UI libraries are bundled.
Coordinates Converter
DMS ↔ Decimal utility · No third-party libraries
No third-party libraries
Built from scratch for offline use
Coordinates Converter is built for offline operation and uses only Android platform APIs. There are no bundled third-party libraries, no advertising SDKs, and no analytics. Everything runs locally on your device.
The app has no internet permission — it genuinely cannot connect to any network.
Android platform APIs
Location, UI, clipboard
Location reading, clipboard access, and all UI rendering use standard Android SDK and Java/Kotlin standard library features. No third-party location, clipboard, or UI libraries are bundled.
Website
portside.work · Fonts and icons
Inter
Typeface
By Rasmus Andersson. Licensed under the SIL Open Font License 1.1. Used across all pages of this website.
Font Awesome 6.5.1
Icons
Free tier. Icons licensed under CC BY 4.0, fonts under SIL OFL 1.1, and code under MIT. Used for interface icons throughout the website.



