mirror of
https://github.com/harivansh-afk/betterNAS.git
synced 2026-04-15 20:03:08 +00:00
1.9 KiB
1.9 KiB
betterNAS Part 3: Local Device
This document describes the software and user experience on the user's Mac or other local device.
What it is
The local device layer is how a user actually mounts and uses their NAS.
It should start simple:
- browser opens the web control plane
- user gets a WebDAV mount URL
- Finder mounts the export
It can later grow into:
- a small helper app
- one-click mount flows
- auto-mount at login
- status and reconnect behavior
What it does
- authenticates the user to betterNAS
- fetches allowed mount profiles from
control-server - mounts approved storage exports locally
- gives the user a native-feeling way to browse files
What it should not do
- invent its own permissions model
- hardcode node endpoints outside the control-server
- depend on the optional cloud adapter for the core mount flow
Diagram
self-hosted betterNAS stack
node-service <--------> control-server <--------> web control plane
^ ^
| |
+------------- [THIS DOC] local device ---------+
browser + Finder
Core decisions
- V1 relies on native Finder WebDAV mounting.
- The web UI should be enough to get the user to a mountable URL.
- A lightweight helper app is likely enough before a full native client.
User modes
Mount mode
- user mounts a NAS export in Finder
- files are browsed as a mounted remote disk
Browser mode
- user manages the NAS and exports in the web control plane
- optional later: browse files in the browser
TODO
- Define the mount profile format returned by
control-server. - Decide whether the first UX is manual Finder flow, helper app, or both.
- Define credential handling and Keychain behavior.
- Define reconnect and auto-mount expectations.
- Define what later native client work is actually worth doing.