Repository navigation
feat: redesign Console pages around their workflows - #270
Merged
Merged
Conversation
Give resources, operations, settings, and identity pages distinct layouts while preserving their existing controls and safeguards. Keep section navigation usable with unsaved drafts and keyboard input.
Give forms bounded bodies and consistent actions, simplify S3 Tables, and keep composed controls aligned. Preserve drafts and pending-state protections across nested dialogs.
Bring file selection into the drop area and size the queue to its contents. Keep short screens, keyboard focus, and RTL object paths usable.
Show Refresh beside Upload instead of hiding it in an overflow menu. Pagination remains available through the list controls.
Match distinct storage segments to labeled bucket shares so small buckets and the combined remainder remain understandable.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Pull Request
Description
Redesign Console pages around their workflows: resource lists, cluster operations, bucket rules, settings, account security, and sign-in.
Type of Change
Testing
763 tests passed. Production-browser checks cover 55 interaction assertions, 88 responsive checks, and 36 Chinese/German/Arabic layout checks. Dialog checks include pending submissions, failed requests, nested retention, 100-file uploads, MFA recovery, long schemas, and long error messages. Upload checks also cover native file/folder pickers, drag and drop, exact object keys, keyboard focus, RTL paths, and a 320×568 viewport. Direct object refresh was checked with pointer and keyboard input, including empty results, pagination, and 16 language/theme/viewport combinations. Bucket shares were checked across six data states and 16 language/theme/viewport combinations, including tiny shares, the combined remainder, unknown statistics, and keyboard navigation.
Two independent reviewers checked correctness and usability. The control-size audit covered 34 pages and 21 dialog states at 390, 1024, and 1440 pixels. The production export was checked under
/rustfs/console, including redirects and assets.A separate smoke test signed in to a real local RustFS server. The broader scenarios use controlled responses; they do not establish full backend integration coverage.
Checklist
Related Issues
Follow-up to #269, requested as a separate page redesign.
Screenshots (if applicable)
100 scenarios, 200 before/after pairs. All captures are desktop light/dark at 1440×1000 with full-page content. Both versions use production exports and the same controlled responses. No mobile screenshots are included.
The full gallery includes every page and state; selected comparisons are shown below.
Full before/after gallery · Manifest and checksums
Login —
/auth/login/Browser —
/browser/Objects —
/browser/?bucket=datasetsAccount —
/account/Site Configured —
/site-replication/SSE Running —
/sse/OIDC Configured —
/oidc/Table Catalog Loaded —
/table-catalog/Lifecycle Multiple Actions —
/lifecycle/?bucket=datasetsStatus Healthy —
/status/Dialog Bucket Create —
/browser/Dialog User —
/users/Dialog Replication Rule —
/replication/?bucket=datasetsDialog Lifecycle Rule —
/lifecycle/?bucket=datasetsDialog Site —
/site-replication/Dialog Catalog Table —
/table-catalog/Dialog Kms Key —
/sse/Tasks Completed —
/browser/?bucket=datasetsTasks Toolbar —
/browser/?bucket=datasetsUpload Destination —
/browser/?bucket=datasets&key=activity-monitor%2Fpreviews%2F&lang=zhUpload Selected —
/browser/?bucket=datasets&key=activity-monitor%2Fpreviews%2F&lang=zhUpload Queue End —
/browser/?bucket=datasets&key=activity-monitor%2Fpreviews%2F&lang=zhBucket Distribution Many —
/browser/Bucket Distribution Skewed —
/browser/Additional Notes
The existing RustFS palette and typography are retained. No dependencies or upstream
components/ui/primitives were changed. Screenshots and their manifest are kept outside the application diff.