TOML

TOML

toml.io

1

About this website

TOML (Tom's Obvious, Minimal Language) is a human-friendly configuration file format designed to be unambiguously representable as a hash table, easy to parse into data structures in any programming language, and simple enough for humans to read and write without specialized tools. Created by Tom Preston-Werner (co-founder of GitHub) in 2013, TOML was designed as a superior alternative to INI files and a simpler alternative to YAML and JSON for configuration purposes, addressing common pain points such as YAML's complex syntax rules, JSON's lack of comments, and INI's limited data type support. The current specification is TOML 1.0.0 (released January 2021), with TOML 1.1.0 in development. TOML supports a rich type system including strings (basic, multi-line, literal, and literal multi-line), integers (with underscores for readability, hex, octal, binary), floats (including infinity and NaN), booleans, dates and times (offset date-time, local date-time, local date, local time), arrays, inline tables, and tables (sections defined by square brackets). Key features include nested tables with dot notation, array of tables for creating collections of objects, key-value pairs with any Unicode characters in keys, multiline strings with whitespace trimming controls, and comments using the hash symbol (#). TOML is widely adopted across the software ecosystem: Rust uses TOML for Cargo.toml (package manifests), Python uses it for pyproject.toml (PEP 517/518/621 build configuration), Hugo uses it for site configuration, and many tools including Pylint, Black, mypy, and Poetry use it for configuration. Official parsers exist for over 30 programming languages including Rust (toml crate), Python (tomllib, tomli), Go (BurntSushi/toml), JavaScript (@iarna/toml), and Java (toml4j).

Tags & Categories

Categories

Tags

Statistics

1
Views
0
Clicks
0
Like
0
Dislike

Comments

Log In to post a comment

No comments yet. Be the first!