DokumenteBilderMedienPDF-Werkzeuge

JSON in TOML konvertieren Online

JSON in TOML umwandeln (Cargo.toml, Hugo, Netlify). Kostenlos, direkt im Browser.

title = "My Project"
version = "1.0.0"
features = ["async", "json"]

[dependencies]
serde = "1.0"
tokio = "1.28"

[[authors]]
name = "John"
email = "john@example.com"
Processed in your browser

Warum JSON in TOML umwandeln?

Rust- und Python-Projekte

Cargo.toml, pyproject.toml und andere TOML-basierte Konfigurationsdateien direkt aus JSON erstellen.

Lesbare Konfiguration

TOML ist fuer Menschen lesbarer als JSON, unterstuetzt Kommentare und hat explizite Typen.

Sofortige Konvertierung

Das TOML-Ergebnis erscheint sofort. Kein Setup, kein Server-Upload, keine Wartezeiten.

Volle Privatsphaere

Deine Konfigurationsdaten werden nie an irgendeinen Server gesendet. Alles laeuft im Browser.

Drei Schritte, kein Aufwand

1

JSON einfuegen oder hochladen

Fuege deinen JSON-Inhalt in den Editor ein oder lade eine .json-Datei hoch. Objekte, Arrays und verschachtelte Strukturen werden unterstuetzt.

2

Sofortige TOML-Konvertierung

Das TOML-Ergebnis erscheint automatisch. Die Konvertierung findet lokal in deinem Browser statt.

3

TOML kopieren oder herunterladen

Kopiere das generierte TOML in die Zwischenablage oder lade es als .toml-Datei fuer dein Projekt herunter.

Noch Fragen?

TOML (Tom's Obvious, Minimal Language) ist ein Konfigurationsdateiformat, das 2013 von Tom Preston-Werner (Mitgruender von GitHub) entwickelt wurde. Es wurde als Alternative zu YAML und JSON fuer Konfigurationsdateien konzipiert, die von Menschen gelesen und bearbeitet werden. TOML verwendet eine Syntax, die auf INI-Dateien basiert, mit expliziten Typen: Zeichenketten in doppelten Anführungszeichen, Ganzzahlen ohne Anführungszeichen, Booleans als true/false und Datumsangaben im RFC-3339-Format. Abschnitte werden durch Tabellen-Header in eckigen Klammern definiert, zum Beispiel [package] oder [dependencies].

Alle drei sind Daten-Serialisierungsformate, unterscheiden sich aber in Zielgruppe und Design. JSON ist am maschinenfreundlichsten: strenge Syntax, kein Kommentar-Support, vollstaendige JavaScript-Kompatibilitaet. YAML ist am flexibelsten und lesbarsten fuer Menschen, aber seine Einrueckungssensitivitaet und implizite Typkonvertierung haben historisch zu Fehlern gefuehrt (zum Beispiel werden bestimmte Zeichenketten als Boolean interpretiert). TOML liegt in der Mitte: explizite Typen wie JSON, aber Kommentar-Support und lesbare Syntax fuer Konfigurationsdateien. Rust's Cargo, Hugo, Netlify und pyproject.toml haben TOML als Standard gewaehlt.

Cargo.toml ist die Manifestdatei fuer Rust-Projekte und wird vom Rust-Build-Tool Cargo verwendet. Sie definiert den Paketnamen, die Version, die Autoren und die Abhaengigkeiten eines Projekts. Die [package]-Tabelle enthaelt Metadaten, [dependencies] die externen Crates mit Versionen und [dev-dependencies] die nur fuer Tests benoetigen Crates. Wenn du JSON-basierte Konfigurationsdaten (zum Beispiel aus einer API-Antwort oder einem anderen Tool) in ein Cargo.toml-Format umwandeln moechtest, hilft dieses Tool dabei.

Hugo (der statische Website-Generator) verwendet TOML als eines seiner drei unterstuetzten Front-Matter-Formate neben YAML und JSON. TOML-Front-Matter wird durch +++ am Anfang und Ende des Blocks begrenzt. Die Hugo-Hauptkonfigurationsdatei config.toml (oder hugo.toml in neueren Versionen) verwendet ebenfalls TOML. Wenn du Seiten-Metadaten aus JSON-Datenquellen hast, kannst du sie in TOML umwandeln, um sie direkt in Hugo-Inhalte zu integrieren.

pyproject.toml ist die moderne Konfigurationsdatei fuer Python-Projekte, die in PEP 517 und PEP 518 definiert wurde. Sie ersetzt setup.py, setup.cfg und requirements.txt in modernen Python-Projekten. Build-Systeme wie Poetry, Flit und Hatch verwenden pyproject.toml fuer Paketmetadaten, Abhaengigkeiten und Build-Konfiguration. Wenn du Python-Projektmetadaten in JSON definiert hast (zum Beispiel aus einem automatisierten Prozess) und in das pyproject.toml-Format migrieren moechtest, ist dieses Tool der schnellste Weg.

Ja, eine wichtige: TOML unterstuetzt keine heterogenen Arrays, also Arrays mit gemischten Typen wie [1, 'text', true]. JSON erlaubt dies. Wenn dein JSON solche Arrays enthaelt, kann die Konvertierung zu Fehlern oder unerwartetem Verhalten fuehren. Ausserdem haben tief verschachtelte Objekte in JSON eine TOML-Darstellung als Tabellen und Untertabellen, die laenger werden kann als das Original. JSON-null-Werte haben kein direktes Aequivalent in TOML und muessen speziell behandelt werden.

JSON online in TOML umwandeln: Cargo.toml, Hugo, Netlify und pyproject.toml

TOML (Tom's Obvious, Minimal Language) wurde im Jahr 2013 von Tom Preston-Werner veroeffentlicht, dem Mitgruender von GitHub und Autor von Gravatar. Die Motivation war eine Luecke zu fuellen: YAML ist zwar menschenlesbar, aber seine impliziten Typkonvertierungen und Einrueckungssensitivitaet fuehren regelmaessig zu Fehlern in der Praxis. JSON ist primaer maschinenfreundlich und unterstuetzt keine Kommentare. INI-Dateien sind lesbar, aber ohne standardisiertes Schema. TOML kombiniert die Staerken dieser Formate: explizite Typen wie JSON, Kommentar-Support wie INI und eine fuer Menschen gut lesbare Struktur. Die wichtigsten TOML-Konzepte sind Tabellen (Abschnitte in eckigen Klammern), Inline-Tabellen und Arrays von Tabellen mit doppelten eckigen Klammern.

Die groesste Verbreitung von TOML kam durch das Rust-Oekosystem. Cargo, das offizielle Build-Tool und Paketmanager fuer Rust, verwendet Cargo.toml als Manifest-Format fuer alle Rust-Projekte. Seit der Veroeffentlichung von Rust 1.0 im Jahr 2015 hat Cargo.toml Millionen von Entwicklern mit TOML vertraut gemacht. Im Python-Oekosystem wurde TOML durch PEP 518 (2016) und PEP 517 (2017) als offizielles Format fuer pyproject.toml eingebuergert, was zur Standardkonfigurationsdatei fuer moderne Python-Projekte wurde. Im Static-Site-Generator-Bereich verwendet Hugo TOML neben YAML und JSON fuer Front-Matter und Konfigurationsdateien, und Netlify sowie andere JAMstack-Dienste akzeptieren TOML fuer ihre Deployment-Konfigurationen.

Die Konvertierung von JSON in TOML ist besonders in drei Szenarien relevant. Erstens bei der Migration von Projektkonfigurationen: Entwickler, die aus JavaScript- oder Node.js-Umgebungen (wo JSON die dominante Konfigurationssprache ist) zu Rust oder Python wechseln, muessen Konfigurationen oft ins TOML-Format portieren. Zweitens bei der Arbeit mit Tools, die JSON ausgeben, aber TOML benoetigen: API-Antworten, JSON-Exportdateien von SaaS-Diensten oder automatisch generierte JSON-Metadaten muessen in TOML umgewandelt werden, um in Hugo-, Netlify- oder Rust-Projekten verwendet zu werden. Drittens bei der Lesbarkeitsverbesserung: JSON-Konfigurationsdateien ohne Kommentar-Support koennen in TOML umgewandelt werden, das Kommentare ermoeglicht. Convertir.ai fuehrt die Konvertierung vollstaendig im Browser durch, ohne Daten an externe Server zu senden.