Ferry Watch

Overview

Ferry Watch is a native iOS app designed to provide real-time tracking of passenger ferries operating in the Pacific Northwest. The app is built with Swift and SwiftUI, offering a clean user experience for ferry passengers.

Development & Implementation

Technologies used

  • Frontend: The Ferry Watch app is developed using Swift with SwiftUI.
  • Server: The backend server is written in Go.
  • Database: The ferry location data is stored in a PostgreSQL db.
  • Data Source: The server fetches ferry location data from aisstream.io.
  • Infrastructure: The backend server and database are hosted on a DigitalOcean droplet.

Building it

Ferry Watch was made to fill a gap in the app marketplace left by another app, Vessel Watch, shutting down. I built it in the first few months of 2023 between my roles at Kano and Katipult. The data is sourced from aisstream.io, a service that provides real-time AIS (Automatic Identification System) data. The server listens for websocket events and updates the database with the latest ferry positions as they come in. This data is then available to the app over a simple REST api.

Links