10 releases (6 stable)
| 1.3.2 | Aug 30, 2025 |
|---|---|
| 1.3.1 | Aug 5, 2023 |
| 1.3.0 | Jan 2, 2022 |
| 1.2.0 | Aug 26, 2021 |
| 0.9.12 | Mar 17, 2021 |
#131 in Encoding
283 downloads per month
9KB
55 lines
toml2json
A command-line tool that converts TOML to JSON. Nothing more, nothing less.
Installation
Cargo
cargo install toml2json
PyPI
NOTE: toml2json on PyPI was originally a pure Python CLI; ownership of the name on PyPI was transferred to woodruffw for this Rust-based CLI in August 2025. Versions prior to 0.1.0 on PyPI are the old pure Python version.
uvx toml2json
uv tool install toml2json
pipx install toml2json
# or pip install, if you're in a virtual environment
Homebrew
toml2json is available via Homebrew:
brew install toml2json
Alpine Linux
toml2json is available for Alpine Edge. It can be installed via apk after enabling the testing repository.
apk add toml2json
Arch Linux
If you're using Arch Linux, you can install toml2json using an AUR helper. For example:
paru -S toml2json
Nixpkgs
nix-env --install toml2json
Please let us know if you package toml2json for another package manager or ecosystem!
Usage
Convert TOML on stdin to JSON, filtering it through jq:
$ toml2json <<< 'wow = "amazing"' | jq
Produces:
{
"wow": "amazing"
}
Convert TOML from a file and pretty-print it without jq:
$ toml2json --pretty ~/.config/kbs2/kbs2.conf
Produces:
{
"age-backend": "RageLib",
"error-hook": "~/.config/kbs2/hooks/error-hook-notify",
"keyfile": "REDACTED-GO-AWAY",
"public-key": "REDACTED-GO-AWAY",
"reentrant-hooks": false,
"store": "~/.kbs2-store",
"wrapped": true,
"generators": [
{
"alphabet": "abcdefghijklmnopqrstuvwxyz0123456789(){}[]-_+=",
"length": 16,
"name": "default"
}
],
"commands": {
"edit": {
"editor": "subl -w",
"post-hook": "~/.config/kbs2/hooks/push-repo"
},
"new": {
"generate-on-empty": true,
"post-hook": "~/.config/kbs2/hooks/push-repo"
},
"pass": {
"clear-after": true,
"clear-hook": "~/.config/kbs2/hooks/pass-clear-notify",
"clipboard-duration": 10,
"x11-clipboard": "Clipboard"
},
"rm": {
"post-hook": "~/.config/kbs2/hooks/push-repo"
}
}
}
Amazing. What more could you want? Hopefully nothing, because it will never do anything else.
Dependencies
~1.8–3MB
~58K SLoC