Supported file formats
Which formats VizChat's document parser accepts, which parse route they take, and which formats you can export to.
VizChat's document parser dispatches files along three routes: direct (plain-text passthrough), local (local library), ocr (remote OCR). The route determines upload speed and credit cost. Source: FILE_TYPE_REGISTRY in app/core/file_types.py.
Import support matrix
Direct — plain text, zero cost, instant
Stored as-is, no parsing, no credits. Great for code, config, lightweight structured data.
| Category | Extensions |
|---|---|
| Plain text | .txt, .md, .mdx, .log |
| Tabular (text) | .csv, .tsv |
| Data interchange | .json, .xml, .yaml / .yml, .toml, .ini, .cfg, .conf, .env |
| Web | .html, .htm |
| Code | .py, .js, .ts, .tsx, .jsx, .java, .go, .c, .cpp, .h, .hpp, .rs, .sql, .sh, .bash, .zsh, .rb, .php, .swift, .kt, .scala, .r, .R, .css, .scss, .less |
Local — backend Python library, low cost
Handled by python-docx, openpyxl, python-pptx, etc. No OCR credits, but takes processing time.
| Extension | Notes |
|---|---|
.docx | Word (modern) |
.pptx | PowerPoint (modern) |
.xlsx | Excel (modern) |
.doc | Word (legacy) |
.xls | Excel (legacy) |
OCR — remote API, billed per page
Uses GLM-OCR or PaddleOCR-VL for scans / images / PDFs. Credits charged per page (see Plan limits).
| Category | Extensions |
|---|---|
| Document | .pdf |
Stored as-is — images and media
Images (.jpg / .jpeg, .png, .gif, .bmp, .webp, .svg, .ico, .heic) and audio / video files are kept in their original form on upload. They are not parsed and cost no credits.
Known gap
.ppt (legacy binary PowerPoint) is not recognised as a document format. Uploading one currently stores it as unreadable text rather than rejecting it — resave as .pptx before uploading.
If the file extension is missing, the parser falls back to MIME type detection (see the MIME_TO_EXT map).
Export formats
| Artifact | Supported formats |
|---|---|
| Storyboard | .vizpkg — portable archive holding the board plus every file it references |
| Document | Download of the original file, byte-for-byte, under its original filename |
| Chat sessions | .json — all sessions, from Settings → Data Management |
| Image / PDF / video | Not available yet — see Export overview |