PRIVACY

What SkyTransit stores, and why

SkyTransit is a non-commercial research prototype. This notice describes the personal data the software actually stores and the third-party services it uses. It is a factual description of the current system, not a formal legal policy, and it will change as the platform develops.

Account data

When you create an account, SkyTransit stores your email address, an optional username and display name, verification and activity flags, and timestamps. Passwords are stored only as an Argon2id hash. If you sign in with Google, SkyTransit stores the Google account identifier and email returned by Google instead of a password.

Your profile may also hold a short bio, a timezone, an optional public location label, and visibility switches (all off by default) that control whether a profile, approximate location, equipment or observations are shown publicly.

Saved observing locations

Saved locations (name, coordinates, elevation, type) are private and scoped to your account. They are never exposed through public APIs, and exact coordinates are not shown on public surfaces. A location obtained from your browser’s geolocation, or picked on the map, is used only for the current search and is not saved unless you explicitly save it.

Notifications and Web Push

Alert subscriptions store the settings you choose: a name, the linked saved location, object and target selection, time horizons, per-channel toggles and lead times. Generated notifications store a title, body and read state.

If you enable browser notifications on a device, SkyTransit stores the Web Push subscription for that device: the push endpoint URL provided by your browser, the associated public keys, and a short device label derived from your browser’s user-agent string. Push endpoints are treated as sensitive and are never written to logs. Delivery records store the channel, status, provider and any error code for de-duplication and troubleshooting. You can turn a device off in Settings → Alerts (which revokes that subscription) and toggle the email / browser channels at any time.

Observations and uploaded content

If you record an observation, SkyTransit stores its status, optional actual location, capture settings, private notes and timestamps. Uploaded photos and videos are held in S3-compatible object storage together with technical metadata (filename, type, size, dimensions, capture time, a content hash). Originals are private by default and are kept unchanged; an item becomes public only if you mark it public, and derived public images have GPS and unnecessary EXIF metadata stripped. Private notes are never turned into public captions automatically.

Cookies, sessions and logs

Signing in sets an opaque, HttpOnly session cookie and a CSRF cookie. The server keeps a matching session record (hashed token, expiry, revocation) that expires after about seven days. Email-verification and password-reset tokens are stored as hashes with short expiries. SkyTransit sets no advertising or analytics cookies and runs no third-party analytics or error-tracking service.

Operational logs are kept at a standard level for running the service. Structured search logs never contain exact coordinates, and correlation identifiers are random rather than derived from your identity. Sign-in and a few other endpoints are rate-limited using an in-memory counter keyed by IP address; that counter holds only recent timestamps, is not written to a database or log, and is cleared when the service restarts.

Third-party services

Depending on configuration, SkyTransit may rely on:

  • an email provider (SMTP) to send verification, password-reset and alert emails;
  • Google Sign-In, when it is enabled and you use it, which shares your Google email and account identifier with SkyTransit;
  • your browser’s Web Push service (operated by your browser vendor), which the push endpoint points to;
  • an S3-compatible object storage service for uploaded media;
  • map, geocoding and routing providers (OpenStreetMap tiles, Overpass, OpenRouteService) and aircraft-data providers used as analysis inputs. Requests to these carry the coordinates and time window for the computation, not your account identity.

SkyTransit is self-hosted on a virtual private server; source code and deployment run through GitLab.

Your controls

  • edit your profile and visibility switches at any time;
  • delete individual saved locations, equipment, alert subscriptions, observations, uploaded media and push devices from the app;
  • toggle the email and browser-notification channels, or disable a device;
  • sign out, which revokes the current session; reset your password by email.

Full self-service account deletion is not implemented yet. Until it is, you can remove your individual data as above, or ask for the account and its data to be deleted by contacting info@skytransit.app.

Changes

This notice reflects the prototype as currently built. It will be updated as features, data handling and infrastructure change. Material changes will be reflected here.

More about the project and its methods.

Research & methodology