affectUI › Screens › App screens

Folders

Folder overview with tabs, search, sort, grid/list toggle and file templates.

Part of affectUI Pro. Install: npx shadcn@latest add https://www.affectui.com/r/files.json · Import from @/components/ui/files

When to use

  • File, knowledge or document areas in an app
  • Overviews of projects or workspaces as cards

When not to use

  • Thousands of files – use a virtualised table

Usage

import { FilesScreen } from "@/components/ui/files";

export default function Page() {
  return <FilesScreen workspace="Acme" user={{ name: "Alex Morgan" }} onNavigate={(label) => router.push(routes[label])} />;
}

Props

NameTypeDefaultDescription
onNavigate(label: string) => voidCalled with the label of a sidebar item or project
workspacestring"Acme"Workspace name in the sidebar
user{ name: string; avatar?: string }{ name: "Alex Morgan" }Account at the bottom of the sidebar
classNamestringExtra class on the root

Accessibility

  • Sidebar items, projects and the collapse toggle are real buttons with labels
  • Icons are decorative and hidden from screen readers

Responsive

  • Fills its container – give it the full viewport height in your app
  • Dark mode built in: switches when an ancestor (usually <html>) has the class dark or data-theme="dark"; colors are CSS variables on .ui-as

Requirements

  • React 19
  • @hugeicons/react
  • @hugeicons/core-free-icons
  • App Shell (installed with it)