Flitch

File upload

Drop a file in. Spreadsheets, tables, places and routes, feeds.

The simplest way to get data in: drag a file in. No connection, no credentials. Thirty formats, from a CSV to a GPS route to a browser's own recording of a page you opened. A document or a picture goes through Upload & extract instead, which reads it and finds the tables.

Upload

Open the upload zone

Go to Data → Add → Upload.

Drop a file

Drag from your file manager, or click to pick. Multiple files supported.

Confirm column types

Flitch parses the file, infers types, and shows a preview. Override any wrong inference.

Save

The file becomes a dataset.

File types

Thirty of them. What happens to a file depends on whether anything later needs it as you sent it.

Turned into tables

Read exactly as written, with no AI involved and nothing to check afterwards.

ExtensionFormatWhat it holds
.csv, .tsv, .psvDelimited textRows separated by commas, tabs or pipes
.xlsx, .xlsm, .xlsb, .xlsExcelA workbook. Each sheet you pick becomes its own dataset
.ods, .fodsOpenDocumentA spreadsheet from LibreOffice or OpenOffice
.xlmlExcel 2003 XMLA workbook saved as SpreadsheetML
.dbfdBaseA table from a mapping or legacy system
.slk, .dif, .prn, .eth, .wk3Older spreadsheetsSYLK, DIF, printed tables, Ethercalc, Lotus 1-2-3
.gpxGPXA recorded route. Waypoints, route points and track points each become their own table
.kml, .kmzKMLPlacemarks and shapes
.rss, .atom, .opmlFeedsItems, entries, or an outline
.harBrowser recordingThe responses a page received. See below

Kept whole

Stored as you sent them and read when you query them, so nesting survives.

ExtensionFormatWhy it is kept
.json, .jsonl, .ndjsonJSONNobody knows what is in one until they look, so flattening on the way in would pick one list and drop the rest
.yaml, .ymlYAMLThe same, in different punctuation
.xmlXMLThe same
.geojsonGeoJSONA map needs the geometry whole, not a table of it

Read with Upload & extract

These are not uploaded here. There is no structure to walk, so Flitch reads the file and finds the tables, and that is Upload & extract, beside this tile under Add source.

ExtensionFormat
.pdfReports, statements, invoices
.docx, .txt, .mdDocuments
.png, .jpg, .jpeg, .gif, .webpScreenshots, photos, scans

Maximum 100 MB per file. For larger data, use a warehouse or cloud storage source.

Data from a site that will not let a server in

Some sites answer a browser and refuse a server, either behind a sign-in or behind bot protection. You can still get the data, because you can open the site yourself.

Open the page in your browser

Sign in if you need to, and let the page load its data.

Export the network recording

Open your browser's developer tools, go to the Network tab, and save it as a HAR file.

Upload the HAR

Every response that held records becomes a dataset, named for the address it came from.

Nothing is circumvented: you did the asking, with your own session. A recording of one page usually carries a dozen calls, which is why each table is named for where it went.

Replace a file

Click the dataset, Replace file. The new file overwrites the old. Existing dashboards, reports and apps keep working as long as columns stay compatible.

Edit

From a dashboard, report or app that uses the upload, open Settings → Data Sources. You can:

  • Click any cell to edit its value.
  • Add or remove rows and columns from the table toolbar.

An uploaded data file becomes a table you can keep current, so these edits are kept with the table and every dashboard, report or app reading it sees them. The file you uploaded is kept as the original. A JSON, JSONL, YAML or XML upload shows a braces glyph on the Data page: each record became a row, with nested fields as dotted columns.

Privacy

Uploaded files stored encrypted at rest in S3. Deleted when you delete the dataset.

On this page