Klarhimmel UI

File screens prompt

Getting files in and knowing where each one is: a drop zone and a list with status.

Prompt

Prompt

Use the klarhimmel-design skill. Build the files page for {product}: accept {types}, and list uploads with their status. Install: npx shadcn add @klarhimmel/app-files-dropzone @klarhimmel/app-files-list (remove what you do not use) Pick: - app-files-dropzone: a drop zone with the file picker inside it; idle, dragging, error - app-files-list: rows that are uploading, done or failed, with Retry and Remove Props: field { label, button, empty, hint }; state enum on the zone from your drag and validation state; files { name, size, status, percent (text 0 to 100), reason? }; handlers come from importing the view. Copy: The hint says types and size. A failed row says why in one line. Buttons name what they do. Accessibility: The picker is always there, dropping is never the only way; the chosen names are announced; progress bars are named by their file; status is a word; Retry and Remove name their file. Never: viewport variants (md:, lg:), style=, text or images outside Text and Media, fields the schema lacks. Shorten copy to fit the limits. Done when: picker present in every state; failed rows have a reason; every status is a word.

Variables

VariableWhat to fill inExample
{product}The appExempelhotellet admin
{types}Accepted file types and sizePDF, PNG, JPG up to 10 MB

A good result

Picker present in every state. Failed rows have a reason. Every status is a word.

checklist.md
- [ ] picker present in every state
- [ ] failed rows have a reason
- [ ] every status is a word