zstation is in active development. The figures on this page are derived from the repository as it stands today (app/src-tauri/, frontend/, and the zstation-core submodule). Anything not yet in the codebase is described as planned — this is a roadmap, not a claim of coverage.
What zstation is
zstation is a from-scratch port of the defunct station.app: one window that arranges your web apps as Trello-like tiles, each in its own isolated session. The desktop shell is a Tauri v2 application with a cyberpunk HUD front-end. The board logic is factored out into a separate, embeddable engine, zstation-core, so the same engine can be reused inside the other MenkeTechnologies GUI apps without dragging GUI or platform dependencies into them. It is a paid product, created by MenkeTechnologies.
Two-layer split
| layer | repository | responsibility |
|---|---|---|
| desktop app | zstation (this repo) | Tauri v2 shell, cyberpunk HUD front-end, native isolated-webview host, shared-submodule wiring |
| engine + view | zstation-core | service catalog, tile board model, board persistence, and the mountable Trello-board view |
Native isolated-webview host
Real per-service session isolation requires native, separately-partitioned webviews (an iframe cannot isolate a login: services forbid framing and iframes share the cookie jar). The host places one child webview per tile via Tauri v2 WebviewWindow::add_child and isolates each by partition — data_store_identifier on macOS/iOS, data_directory on Windows. The host exposes these commands to the mountable view (in app/src-tauri/src/station_webview.rs):
| command | role |
|---|---|
| station_webview_open | create/show the isolated child webview for a tile, isolated by partition |
| station_webview_set_bounds | keep the webview aligned to the tile body as it drags/resizes |
| station_webview_set_visible | hide the webview when the Board tab is not active (it paints above the DOM) |
| station_webview_navigate | point a tile's webview at a new URL |
| station_webview_reload | reload a tile's webview |
| station_webview_close | tear down a tile's webview |
GUI baseline
zstation consumes the 10-point MenkeTechnologies family GUI contract from the shared submodules: ⌘K command palette, Stryke Hooks editor, embedded terminal, shared cyberpunk theme, tab bar + tile dashboard, top-left logo, fuzzy filters, sortable/resizable tables, clip-engine arrangement grid, and a multi-pane file browser — wired in the app shell rather than reimplemented per app.
Verification
The embeddable engine carries in-source Rust unit tests plus a headless Node test suite for the mountable view (see the zstation-core report). The Tauri host layer is exercised through the app build; the pure engine runs without network access and passes identically in headless CI.