Skip to content

[Feature]: iPad Version — purpose-built layout, not a stretched iPhone app #17

@tashda

Description

@tashda

What problem does this solve?

Today Shellbee runs on iPad as a scaled-up iPhone app — single-column nav, phone-sized touch targets, lots of empty space. iPad users have a 11–13" canvas, often a Magic Keyboard with trackpad, sometimes an external display, and they expect the app to use that surface. A power tool for managing a Zigbee mesh actually benefits from iPad more than from iPhone — diagnostics dashboards, the network map, side-by-side device editing, command-driven workflows. Shellbee should look stunning on iPad and behave like a real iPad app.

What would you like Shellbee to do?

A purpose-built iPad layout. Not a tweaked iPhone view — a proper sidebar / multi-column structure that takes advantage of the larger screen and pointer/keyboard input.

1. Sidebar navigation

Replace the bottom tab bar with a primary sidebar (using NavigationSplitView's sidebar/content/detail three-column model where the screen is wide enough). Sidebar sections:

  • Home
  • Devices
  • Groups
  • Activity
  • Network Map
  • Settings

In compact width (Slide Over, narrow Stage Manager window), gracefully fall back to the iPhone tab bar.

2. Multi-column master-detail

NavigationSplitView with three columns where it makes sense:

  • Devices: sidebar (categories/rooms/filters) → device list → device detail. Tap a device, the detail fills the right column instead of pushing a new screen.
  • Activity: sidebar (filter chips: state changes, availability, OTA, system) → event list → event detail.
  • Groups: sidebar (group list) → members → member detail.

Two-column collapse on smaller iPad sizes, three-column on full-width 12.9".

3. Trackpad and keyboard support

  • Cmd+F focuses the global search (universal across screens).
  • Cmd+K opens a command palette: jump to device, run identify, toggle permit-join, run network map refresh, etc. (Power-user accelerator.)
  • Cmd+1..5 switches sidebar sections.
  • Tab / Shift+Tab navigates form fields and rows; Space toggles, Return opens.
  • Hover states on rows, buttons, and cards via .onContinuousHover / pointer-style modifiers — the row highlights subtly when the trackpad cursor is over it.
  • Cursor takes appropriate shapes (.pointer on tappable rows, .text in fields).

4. Drag-and-drop

  • Drag a device from Devices into a Group in the sidebar to add it to that group.
  • Drag a device into a "Quick Group" / favorites collection.
  • Drag-and-drop reorder of favorites / groups.
  • Drag a device thumbnail out of Shellbee into another app (Notes, Mail) — emits a JSON pasteboard payload with the device's friendly name + IEEE for power users debugging in scratch notes.

5. Multi-window

Support iPadOS multi-window so the user can open multiple Shellbee scenes side-by-side: one window on the network map, another on a device's detail, another on Activity. Useful when actively diagnosing — watch Activity on the right while you toggle a device on the left.

UIScene configuration + WindowGroup with state-restoration so each window remembers what it was showing.

6. Stage Manager and external display

  • Resizable windows with sensible minimum sizes.
  • External display support — a Stage-Manager-attached external monitor running Shellbee in landscape gets the full three-column layout, or even the network map full-screen on the external while the phone-window manages it.

7. Density tuned for iPad

Don't just scale phone components up. Where iPad has the room:

Where iPad does NOT need more space (e.g. a slider, a toggle), keep the same control sizes — readable, not stretched.

8. Visual polish

  • Use iPad's larger canvas to surface secondary information that's hidden on phone (e.g. show LQI numerically next to availability dot in the device row instead of having to drill in).
  • Backgrounds, materials, and shadows that look native on iPad (sidebar uses sidebar material, content uses standard background, etc.).
  • Test on every iPad form factor: mini, regular 11", Pro 13".

9. Pencil

Skip. No good reason to wire it up — Shellbee isn't a drawing app and there's no annotation surface that benefits.

Does the Z2M web frontend already do this?

No — the web frontend works on iPad in a browser, but it's a desktop site. There's no native iPad experience. This is a Shellbee differentiator: a mesh-management tool that's better on iPad than the web frontend.

Alternatives considered

  • Stretch the phone layout — current state. Wastes the screen, looks lazy.
  • iPad-only redesign without keeping iPhone parity — no, both surfaces matter. Adaptive layouts using NavigationSplitView's built-in compact/regular adaptivity.
  • Catalyst / macOS port — out of scope here. iPad first; Mac is a separate decision.

Out of scope (explicitly)

  • visionOS / Vision Pro support — separate consideration, not iPad work.
  • Apple Watch companion — phone-pocket use case, doesn't belong in Shellbee anyway.
  • Smart-home companion features (widgets, App Intents, geofences, scenes for daily home control) — those belong in Casita, not Shellbee.

Related

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions