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.

Source: github.com/maplibre/maplibre-native
License: BSD 2-Clause

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.

Source: openstreetmap.org
License: ODbL 1.0

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.

Source: openseamap.org
License: CC BY-SA 2.0

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.

Source: openfreemap.org

OpenMapTiles

Vector tile schema

Open-source schema used for the underlying vector tile format. © OpenMapTiles.

Source: openmaptiles.org
License: BSD 3-Clause

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.

Source: github.com/supabase-community/supabase-kt
License: MIT

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.

Source: github.com/ktorio/ktor
License: Apache 2.0

kotlinx.serialization

JSON serialization

Apache License 2.0. Used for parsing and generating JSON for vessel records, sync payloads, and file exports.

Source: github.com/Kotlin/kotlinx.serialization
License: Apache 2.0

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.

Source: cs.android.com/androidx
License: Apache 2.0

Kotlin Standard Library

Language runtime

Apache License 2.0. Portside is written in Kotlin.

Source: kotlinlang.org
License: Apache 2.0

Original work: All application code, UI design, business logic, logbook architecture, and documentation are original to Portside. No third-party code, icon sets, fonts, or assets are bundled beyond those listed above.
Bonded Stores

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

Source: cs.android.com/androidx
License: Apache 2.0

Kotlin & kotlinx

Language & serialization

  • Kotlin Standard Library — Apache 2.0
  • kotlinx.serialization-json 1.7.3 — Apache 2.0

Source: github.com/Kotlin/kotlinx.serialization
License: 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.

Original work: All application code, UI design, business logic, calculation engines, and documentation are original to Bonded Stores. No third-party code, icon sets, fonts, or assets are bundled beyond those listed above.
Sea Wages

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.

Original work: All application code, calculation logic, UI design, layout, and documentation are original to Sea Wages. No third-party code, icon sets, fonts, or assets are bundled in the app.
LSA & FFE

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.

Original work: All application code, UI design, safety register logic, status pill calculations, verification tracking, and documentation are original to LSA & FFE. No third-party code, icon sets, fonts, or assets are bundled in the app.
Coordinates Converter

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.

Original work: All application code, UI design, coordinate conversion logic, clamping behavior, and documentation are original to Coordinates Converter. No third-party code, icon sets, fonts, or assets are bundled in the app.

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.

Source: fonts.google.com/specimen/Inter
License: SIL OFL 1.1

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.

Source: fontawesome.com
License: fontawesome.com/license/free

Original work: All site content, layout, design, and code are original to Portside. No third-party JavaScript, CSS frameworks, or tracking tools are used on this website.