Skip to content

Releases: malinfossum/kenaz

Kenaz v1.0 — Standalone Android PWA

Choose a tag to compare

@malinfossum malinfossum released this 24 Jun 13:12

Kenaz v1.0 — Standalone Android PWA

Kenaz is now a standalone, installable Android app — a local-first PWA that runs entirely on your phone.

What's new

  • No PC, no LAN, no API. The app no longer depends on the loopback server. Data and logic live on the device.
  • Local data in IndexedDB. Your check-ins are stored on the phone and never leave the device — no accounts, no telemetry, no network.
  • Installable + offline. Add it to your home screen from the browser; it launches standalone and opens with no network. Navigations are network-first so new releases load automatically when online; the cached shell serves you offline.
  • Export / import is your backup. Export downloads a JSON backup; import merges one back in (newer entries win). This is also how your existing check-ins move from the desktop app to the phone. The backup file is unencrypted — keep it somewhere private, and export regularly: it's your only safety net if the device or its storage is lost.

How it's built

The app reuses the existing mobile-first web UI. The C# insights and newer-wins merge were ported to JavaScript and pinned to the original test cases (48 unit tests). The static shell is served over HTTPS from GitHub Pages at https://malinfossum.github.io/kenaz/; only the code is public — your data is not.

The C# stack (Kenaz.Core / Console / Api) is unchanged and remains the foundation for a future native desktop app.

Getting your data onto the phone

  1. Export your check-ins from the desktop app to a JSON backup.
  2. Open the installed app → Data tab → Import from a backup file → pick the file.
  3. Confirm your history and weekly review look right.

Privacy & limitations

  • Data is unencrypted at rest on the device (Android app-sandboxed) — an accepted trade-off for a single-user local tool.
  • The host (GitHub) logs that the app was fetched (IP/time) — never check-in data.
  • iOS is not targeted; the PWA remains incidentally iOS-capable for later.