StealThis .dev
Pages Medium

SaaS — Settings Page

A thorough SaaS account settings page with a vertical settings nav covering Profile, Workspace, Notifications, Appearance, and Security. Grouped form fields, accessible toggles, a per-channel notification matrix, a working theme and accent picker, and a guarded danger zone. Edits track a real dirty state with a save and discard action bar, toggles and theme choices persist to local storage, and an unsaved-changes guard protects you before leaving.

Open in Lab
html css vanilla-js
Targets: JS HTML

Code

Settings Page

A complete account settings surface for the fictional Atlas workspace. A sticky vertical nav switches between five panels — Profile, Workspace, Notifications, Appearance, and Security — implemented as an accessible tablist with full arrow-key navigation. Each panel groups its controls into clean cards: labelled inputs and selects, an affixed workspace URL field, custom switch toggles, and a per-channel notification matrix for email and push.

Every interaction works. Editing any field or flipping any toggle raises a real dirty state, revealing a floating Save / Discard action bar and an Unsaved changes pill in the top bar. Saving commits a new baseline and persists toggle states; discarding restores the originals. The Appearance panel ships a working light, dark, and system theme picker plus an accent-color picker — both apply live and persist to local storage, with Reduce motion honoring the user’s preference instantly.

The Security panel rounds it out with a password form, two-factor toggle, a revocable active-sessions list, and a danger zone whose Delete workspace action opens a focus-trapped confirmation modal that requires typing DELETE. A beforeunload guard warns before you navigate away with pending edits.

Illustrative SaaS UI only — fictional product, metrics, and billing. No real backend.