VAPP-18: Settings read-only server URL; statusbar shows real server URL #31

Merged
David merged 2 commits from feat/settings-server-url-vapp-18 into main 2026-06-07 21:19:39 +02:00
Owner

VAPP-18: Settings read-only server URL; statusbar shows real server URL

Settings now shows the configured vervain-server URL read-only, and the statusbar shows the real URL instead of the hardcoded https://localhost:15443 placeholder.

Changes

  • New server fn get_server_url() (src/server_fns/mod.rs) returning the server_base_url() value, mapping the unset/blank case to the literal "not configured". It never errors so both surfaces always have something to render.
  • New read-only Connection card on SettingsPage (above Appearance) with a "Server URL" row: the value in monospace plus the help text "Configured via the VERVAIN_SERVER_URL environment variable on the vervain-apps server container. Not editable at runtime."
  • src/components/statusbar.rs: the hardcoded URL span now renders the get_server_url() value fetched once via use_resource, falling back to "not configured" while the resource resolves. The existing live connection dot wiring is untouched.

Acceptance criteria

  • Settings shows a Connection card with the configured server URL, read-only, plus the configuration note
  • When VERVAIN_SERVER_URL is unset the card and statusbar show "not configured" instead of an empty string or a fake default
  • The statusbar URL reflects the actual configured server, not a hardcoded value
  • No editable URL input exists anywhere in Settings
  • just check passes

Refs VAPP-18.

## VAPP-18: Settings read-only server URL; statusbar shows real server URL Settings now shows the configured vervain-server URL read-only, and the statusbar shows the real URL instead of the hardcoded `https://localhost:15443` placeholder. ### Changes - New server fn `get_server_url()` (`src/server_fns/mod.rs`) returning the `server_base_url()` value, mapping the unset/blank case to the literal "not configured". It never errors so both surfaces always have something to render. - New read-only Connection card on `SettingsPage` (above Appearance) with a "Server URL" row: the value in monospace plus the help text "Configured via the VERVAIN_SERVER_URL environment variable on the vervain-apps server container. Not editable at runtime." - `src/components/statusbar.rs`: the hardcoded URL span now renders the `get_server_url()` value fetched once via `use_resource`, falling back to "not configured" while the resource resolves. The existing live connection dot wiring is untouched. ### Acceptance criteria - [x] Settings shows a Connection card with the configured server URL, read-only, plus the configuration note - [x] When VERVAIN_SERVER_URL is unset the card and statusbar show "not configured" instead of an empty string or a fake default - [x] The statusbar URL reflects the actual configured server, not a hardcoded value - [x] No editable URL input exists anywhere in Settings - [x] `just check` passes Refs VAPP-18.
feat(settings): read-only server URL in Settings and statusbar
All checks were successful
Check / fmt + clippy + build + tests (pull_request) Successful in 58s
3fc720e056
Add a `get_server_url` server fn that returns the configured `VERVAIN_SERVER_URL` or the literal "not configured" when the var is unset or blank, never erroring so both surfaces always have something to render. Settings gains a read-only Connection card (above Appearance) showing the URL with a note that it is configured via the env var on the vervain-apps server container and is not editable at runtime. The statusbar replaces its hardcoded `https://localhost:15443` placeholder with the same value, fetched once via `use_resource`. No editable URL input exists in Settings; `VERVAIN_SERVER_URL` is deploy-time config and stays read-only.

#VAPP-18
Merge remote-tracking branch 'origin/main' into feat/settings-server-url-vapp-18
All checks were successful
Check / fmt + clippy + build + tests (pull_request) Successful in 1m2s
Create release / Create release from merged PR (pull_request) Has been skipped
effc33e528
# Conflicts:
#	src/components/pages/settings.rs
David merged commit d5d84a2373 into main 2026-06-07 21:19:39 +02:00
David deleted branch feat/settings-server-url-vapp-18 2026-06-07 21:19:39 +02:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
psa-systems/vervain-apps!31
No description provided.