TOML

What is a TOML file?

A configuration format that stays readable without YAML’s indentation traps.

What TOML is

TOML is a plain-text format you can open in any editor. It is used for editing.

The extension is .toml, and the full name is Tom's Obvious Minimal Language. Both matter less than what the file can hold, which is what the rest of this page is about.

Where TOML came from

It dates from 2013. The specification is TOML 1.0.

Age is worth knowing here for one practical reason: the older a format is, the more programs have had time to learn it.

The specification is public

Anyone can implement it without asking permission or paying a licence, which is why it turns up in so many programs and why files written twenty years ago still open.

Nothing is thrown away

TOML stores its content exactly. Saving it again changes nothing, so it can be opened, edited and re-saved as often as you like without accumulating damage — which is what makes it a working format rather than a delivery one.

You can leave notes in it

TOML has a comment syntax, which is the difference between a file a person maintains and one a program writes. Comments are the first thing lost converting to a format without them, and nothing warns you.

What opens TOML

Visual Studio Code reads it, and so do most programs of the same kind.

If a file will not open, the format is rarely the problem — it is more often that the program predates it. Converting to something older is the reliable way past that, and it is what the rest of this site is for.

Opening it in a browser

No browser reads it.

That is the single most common reason to convert it: not that the format is bad, but that the place you want to show the file cannot read it.

It is a working format

TOML is meant to be opened and changed. Keep the file in this format for as long as the work is going on, and export from it whenever a finished copy is needed.

The facts, in one place

Identifiers and provenance for the TOML format.
Extension.toml
Media typeapplication/toml
First published2013
SpecificationTOML 1.0

Converting TOML to something else

Converting something else to TOML

Formats worth considering instead of TOML