Screens / Knowledge and setup
Import data
Take a spreadsheet in, match its columns to the product's fields and check the rows before anything lands.
For: Admins and operators bringing in records.
2 ways to lay it out
1. Drop, map, review
Pick it when: The default: a file arrives, columns are matched, rows are checked, then it lands.
- Data importProDrop a spreadsheet, then see what was read: rows, columns with sample values, and rows that couldn't be read.
- Column mapperProMatch file columns to the object's fields.
- Import reviewProHow many rows are ready, which need fixing and why, grouped by kind of problem.
- StepperProThe steps of the import, with where the person is.
- Reconcile tableProRows that would update records already there, matched against them: conflicts show both values, and the person resolves each.
Pro and Premium items need a licence key; free ones install as they are.
2. Large file with progress
Pick it when: The file is big and the import takes time.
- ProgressFreeA bar for work whose progress is measured: an upload, an import, an index.
- Import reviewProRows that need fixing, so far.
- Task trayProBackground work as one pill, so the person can leave the page.
Pro and Premium items need a licence key; free ones install as they are.
Rules that matter most here
- Unknown stays unknown
A cell that couldn't be read is shown as unread, with why; it isn't filled with a guess.
- Say what can and can't be undone
Importing says how many rows will be created or changed, and whether the import can be undone.
- Nothing is pre-selected in a decision
A column the mapper isn't sure about starts unmapped.
Brief for a coding agent
Paste this into the agent that builds the screen. The docs MCP server returns the same text from get_screen.
Build a data import with Candor UI. DataImport takes the file and shows what was read: rows, columns with sample values and rows that couldn't be read, with why. ColumnMapper matches file columns to the object's fields. A column it can't match starts unmapped; don't preselect a guess. ImportReview groups rows by kind of problem and says how many are ready. Show Progress only where the figure is measured. For a long import, move it to a TaskTray pill. Before the import lands, say how many rows are created or changed and whether it can be undone. Start from the "Drop, map, review" layout: A step bar across the top and the current step below it: the dropped file, the column mapping, the row check. Candor items: data-import (https://candor.themethodic.com/docs/data-import.md), column-mapper (https://candor.themethodic.com/docs/column-mapper.md), import-review (https://candor.themethodic.com/docs/import-review.md), stepper (https://candor.themethodic.com/docs/stepper.md), reconcile-table (https://candor.themethodic.com/docs/reconcile-table.md). Install: npx candor-ui add data-import column-mapper import-review stepper reconcile-table Read each item's docs before using it and take its props from there; don't guess them. Pro and Premium items need the person's licence key, which they add with `npx candor-ui key <key>`; don't ask for it.