EXTENDED UI
Treeview
Nested folders, categories and permissions — fully keyboard-driven.THEME
01
Playground
Selection, lines, icons, counts and densitySpring 27 · files
Spring 2720
Selects6
Day 13
JPGHero 01.jpg0
JPGHero 04.jpg0
JPGHero 07.jpg0
Day 22
PDFContact sheet.pdf0
Finals5
BTS3
Raw4
PDFBrief.pdf0
PDFContract.pdf0
Nothing selected↑ ↓ ← → · Enter · Space
<TreeView data={files} selection="single"
showLines={true} showIcons={true} showCounts={true}
density="comfortable" defaultExpanded={["s27", "selects"]}
onSelect={id => open(id)} />
Settings
SELECTION
DENSITY
02
Patterns
File manager, search, permissions, drag & drop, lazy loadingFile managertree · breadcrumbs · contents
Spring 2720
Selects6
Finals5
BTS3
Raw4
Double-click a folder to open it.
Searchfilter · auto-expand · highlight
⌕
Try “launch” or “Mira”Nordic Thread3
Spring 27 campaign0
Fjord winter lookbook0
Store windows0
Lumen Studio2
Mira Optics2
Kiln Coffee2
Fjord Outdoor2
Permissionsroles × sections · tri-state
SECTIONOwner13 / 13Editor7 / 13Client3 / 13
Clients0
View0
Edit0
Delete0
Projects0
View0
Edit0
Files0
Upload0
Delete0
Invoices0
View0
Create0
Send0
Refund0
Settings0
Team0
Billing0
Categories · drag & dropmove a branch into a folder
Products0
Prints0
A3 fine art0
A4 matte0
Albums0
Linen0
Leather0
Gift cards0
Services0
Shoots0
Portrait0
Campaign0
Retouch0
Archive0
Empty folder
Lazy loadingchildren fetched on expand
2025 archive0
2024 archive0
Shared with me0
Offline drive0
03
Behaviour
Rename, context menu, remembered state, keyboardEditable treedouble-click · F2 · right-click
Client gallery3
Selects2
JPGHero 04.jpg0
JPGHero 07.jpg0
Finals0
PDFRead me.pdf0
Remember expandedsaved per user
Open or close folders in the Playground, then simulate a reload.Nothing saved yet — toggle a folderKeyboardWAI-ARIA tree pattern
↑ ↓Previous / next visible item
→Open folder, then go to first child
←Close folder, then go to parent
Home EndFirst / last item
EnterSelect (or tick with checkboxes)
SpaceTick / select
F2Rename (editable tree)
DeleteDelete (editable tree)
04
Rules & a11y
Checklist and Do / Don’tChecklist
✓role="tree" + treeitemaria-level, aria-expanded on folders, aria-selected / aria-checked
✓One Tab stoproving tabindex; arrows move inside the tree
✓Tri-state parentsaria-checked="mixed" when only some children are ticked
✓Search keeps contextshow matching items with their parents
✓Drag has an alternativeMove… in the menu or cut / paste
✓Lazy folders say sospinner while loading, clear error with Retry
DO✓Keep labels short; show counts on folders✓Open the path to the current item✓Remember what people expanded✓Use indentation of ~18 px per level
DON’T✕Nest deeper than 5–6 levels✕Make the whole row only a toggle✕Hide actions behind right-click only✕Lose selection when a folder collapses