.toml

What is a .toml file?

TOML is a configuration format designed for readability — used by Rust's Cargo, Python's pyproject.toml, and Hugo.

Safe format
Type Data
By Tom Preston-Werner
MIME application/toml

Drop any file to identify it

No upload. No signup. No sending your file halfway across the internet.
We tell you what it is, right here in your browser.

What is it

You have a .toml file — a configuration format designed to be obvious. TOML (Tom's Obvious Minimal Language) was created by Tom Preston-Werner (GitHub co-founder) because he felt YAML was too fragile and JSON was too noisy for configuration files. The result is a format where every value has an unambiguous type.

TOML is the configuration format for Rust's Cargo (Cargo.toml), Python's modern packaging (pyproject.toml), Hugo (the static site generator), and an increasing number of developer tools. It supports strings, integers, floats, booleans, dates, arrays, and nested tables — all with intuitive syntax. Unlike YAML, indentation doesn't matter. Unlike JSON, you can add comments. Unlike INI, you can express complex nested structures.

Any text editor opens .toml files. VS Code with the Even Better TOML extension provides syntax highlighting, validation, and schema support. The format is particularly common in Rust and Python ecosystems — if you're configuring a project in either language, you're probably editing a TOML file.

Technical details
Full Name
Tom's Obvious Minimal Language
MIME Type
application/toml
Developer
Tom Preston-Werner
Magic Bytes
N/A
Safety
.toml is a known, safe format.
What opens it
Any text editor
FREE All
VS Code
FREE All
FAQ
What's the difference between TOML and YAML?
TOML uses explicit syntax (brackets for tables, equals for values) — types are unambiguous. YAML uses indentation (whitespace-significant, which causes subtle bugs). TOML is harder to get wrong; YAML is more expressive for complex nested structures.
Where is TOML used?
Rust (Cargo.toml), Python (pyproject.toml), Hugo, Deno, and many modern developer tools. It's the standard for project configuration in the Rust ecosystem and increasingly common in Python.
Related formats