Guides & How-tos

Sixty-Eight Table Conversions, Proven Before They Appear

Twelve table sources now write as JSON Lines, MessagePack, CBOR, BSON, Arrow, or SQLite. Every route downloaded a real file in three browser engines and had its rows read back before it was allowed to appear.

Guides & How-tosUpdated Version 1.04 min readNovus Convert Team
Twelve table source formats feed an admission gate of three browser engines and a row read-back, which admits six record outputs including Arrow and SQLite.

Verified table conversions

How Novus Convert proves table routes before they appear in the catalogue.

Read the transcript
Transcript
  1. Twelve table sources become six record formats.
  2. Every route downloads in three browser engines.
  3. An independent reader must recover the rows.
  4. Unverified pairs stay out of the catalogue.

A conversion route that only changes an extension is not a product. On 8 September 2026 Novus Convert shipped sixty-eight table routes that each had to download a real file in Chrome, Firefox, and Safari's engine, then survive an independent reader that checked the rows came back. Until that passed, the route stayed off the catalogue.

The sources are twelve table shapes people already have: TSV, XLSX, XLS, ODS, JSON Lines, Parquet, Avro, dBASE, NumPy .npy, MessagePack, CBOR, and BSON. The outputs are six record formats: JSON Lines, MessagePack, CBOR, BSON, Apache Arrow, and SQLite. Pairings such as XLSX to SQLite, Parquet to JSON Lines, and TSV to Arrow are examples, not a marketing sample of an unfinished set.

What verification means here#

Verification is not a green checkbox drawn next to a registry entry. A route downloads. A separate reader opens the download. Rows and columns are compared against the fixture contract. If the signature is wrong, the reopen fails, or the semantics drift, the route does not ship as verified. That is the same discipline Convert already uses for other families, applied to tables.

  • Three browser engines must complete the download path.
  • An independent reader must recover the rows.
  • Meaning is preserved where the formats allow it: leading zeros stay text, empty strings stay empty, missing fields become null, nested objects can be stored as JSON with a note.
  • Numbers outside JavaScript's exact integer range are kept as their original digits or refused; they are never silently rounded.

Feature walkthrough

Detect workbook or table source

  1. Detect workbook or table source
  2. Choose JSON Lines, Arrow, or SQLite
  3. Verify rows in an independent reader
Step 1 of 3
Detect the table, choose a record format, verify the download in an independent reader.

Why SQLite and Arrow belong in a browser converter#

SQLite is how many tools expect structured data to arrive when a CSV is no longer enough. Arrow is how analytics stacks exchange columnar batches without inventing yet another CSV dialect. Putting both behind the same local conversion desk means a workbook can become a database file or a columnar stream without an upload step.

That does not make Convert a database server. There is no multi-user lock manager and no cloud sync of your tables. The browser produces a file you can download. What you do with that file afterwards is outside this product on purpose.

Honesty about loss#

Some table meaning does not survive every destination. A record format holds values, so spreadsheet formulas and cell styling are not carried into JSON Lines, Arrow, or SQLite. Nested objects and mixed-type columns are stored as JSON, with a note recording how to read them back, rather than being flattened into something that only looks tidy. The converter's job is to say where meaning changes, not to pretend every destination is lossless.

How to try the wave#

Open the conversions directory and look for the table pairs you need. Prefer a fixture you already trust: a small workbook with known leading zeros, an empty string cell, and one nested JSON-looking field. Convert it, reopen the download in a tool that is not Novus Convert, and confirm the awkward cells still mean what you intended. The guide to verifying conversion results walks through that reopen check in more detail.

If a route is missing, that is usually absence of a verified fixture path rather than a forgotten button. The catalogue grows when a route can prove itself, not when a competitor page lists a similar pair.

The same changelog entry also records better TIFF handling and LZ4 or Zstandard compressed Arrow and Feather reads within a bounded expansion limit. Those are adjacent reliability fixes.

The table wave is the feature this article exists to explain: sixty-eight routes that had to survive three browsers and a second reader before they were allowed to claim success.

Troubleshooting

Does every table format convert to every output?

No. The shipped set is sixty-eight verified routes across twelve sources and six outputs. Unlisted pairs are not silently enabled.

Do files leave my device?

No. Conversion still runs in the browser. Verification in the release process used fixtures; your files are not part of that evidence.

What happens to spreadsheet formulas?

Record destinations receive values, not live formulas. Prefer exporting calculated values from the workbook when the formula itself must be preserved elsewhere.

Frequently asked questions

Does every table format convert to every output?

No. The shipped set is sixty-eight verified routes across twelve sources and six outputs. Unlisted pairs are not silently enabled.

Do files leave my device?

No. Conversion still runs in the browser. Verification in the release process used fixtures; your files are not part of that evidence.

What happens to spreadsheet formulas?

Record destinations receive values, not live formulas. Prefer exporting calculated values from the workbook when the formula itself must be preserved elsewhere.

Related workflows and tools

Sources and further reading