{"id":16643946,"url":"https://github.com/antoineaugusti/table-schema-to-markdown","last_synced_at":"2026-03-15T22:48:12.967Z","repository":{"id":147566314,"uuid":"163675767","full_name":"AntoineAugusti/table-schema-to-markdown","owner":"AntoineAugusti","description":"Crée un fichier de documentation Markdown à partir d'un fichier Table Schema","archived":false,"fork":false,"pushed_at":"2024-05-16T08:40:43.000Z","size":37,"stargazers_count":8,"open_issues_count":2,"forks_count":5,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-03-01T07:42:27.872Z","etag":null,"topics":["documentation-generator","frictionlessdata","markdown","table-schema"],"latest_commit_sha":null,"homepage":"https://pypi.org/project/table-schema-to-markdown/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/AntoineAugusti.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-12-31T14:38:13.000Z","updated_at":"2024-12-30T22:23:59.000Z","dependencies_parsed_at":null,"dependency_job_id":"836cbb39-db61-4b08-b24e-38a71e50b1e3","html_url":"https://github.com/AntoineAugusti/table-schema-to-markdown","commit_stats":{"total_commits":29,"total_committers":4,"mean_commits":7.25,"dds":0.2068965517241379,"last_synced_commit":"8d655cce156e6378eca96bc377668ce286e9d1b9"},"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AntoineAugusti%2Ftable-schema-to-markdown","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AntoineAugusti%2Ftable-schema-to-markdown/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AntoineAugusti%2Ftable-schema-to-markdown/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AntoineAugusti%2Ftable-schema-to-markdown/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/AntoineAugusti","download_url":"https://codeload.github.com/AntoineAugusti/table-schema-to-markdown/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244147344,"owners_count":20405940,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["documentation-generator","frictionlessdata","markdown","table-schema"],"created_at":"2024-10-12T08:10:01.265Z","updated_at":"2026-03-15T22:48:12.916Z","avatar_url":"https://github.com/AntoineAugusti.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![Software License](https://img.shields.io/badge/License-MIT-orange.svg?style=flat-square)](https://github.com/AntoineAugusti/table-schema-to-markdown/blob/master/LICENSE.md)\n![CircleCI](https://img.shields.io/circleci/project/github/AntoineAugusti/table-schema-to-markdown.svg?style=flat-square)\n![PyPI](https://img.shields.io/pypi/v/table-schema-to-markdown.svg?style=flat-square)\n![PyPI Python version](https://img.shields.io/pypi/pyversions/table-schema-to-markdown.svg?style=flat-square)\n\n# Table Schema to Markdown\nCreate a Markdown documentation file from a [Table Schema file](https://frictionlessdata.io/specs/table-schema/).\n\nThe original scripts are coming from [doc-generator](https://git.opendatafrance.net/scdl/doc-generator) for the [Validata](https://validata.fr/) project, which are now available as [an npm package](https://www.npmjs.com/package/@opendataschema/table-schema-to-markdown).\n\n## Installation\n```\npip install table-schema-to-markdown\n```\n\n## Usage\n### Command line tool\nThe package provides a command line tool.\n```\n$ table-schema-to-md -h\nusage: table-schema-to-md [-h] [-o OUTPUT] [--log LOG] table_schema\n\npositional arguments:\n  table_schema          path or URL of table schema file\n\noptional arguments:\n  -h, --help            show this help message and exit\n  -o OUTPUT, --output OUTPUT\n                        Output file name\n  --log LOG             level of logging messages\n```\n\nExample:\n```sh\n# Print generated Markdown\ntable-schema-to-md schema.json\n# Save to Markdown file\ntable-schema-to-md schema.json -o documentation.md\n```\n\n### In Python\n```python\nfrom table_schema_to_markdown import convert_source\n\n# Generate a Markdown documentation from a JSON file\ntable_schema = '/tmp/schema.json'\nwith open('/tmp/doc.md', 'a') as out:\n    convert_source(table_schema, out)\n\n# Generate Markdown documentation in a string\nimport io\n\nwith io.StringIO() as buff:\n    convert_source(table_schema, buff)\n    documentation = buff.getvalue()\n```\n\n## Generated documentation example\n[This table schema file](tests/files/repertoire.json) is rendered in Markdown in [this file](tests/files/expected_repertoire.md).\n\nFind a generated documentation file below.\n\n## Métadonnées d'un répertoire Git\n\n- Auteur : Antoine Augusti \u003cantoine.augusti@example.com\u003e\n- Schéma créé le : 12/31/18\n- Site web : https://github.com/AntoineAugusti/data-codes-sources-fr\n- Clé primaire : `repertoire_url`\n\n### Modèle de données\n\n|Nom|Type|Description|Exemple|Propriétés|\n|-|-|-|-|-|\n|nom|chaîne de caractères|Le nom du répertoire|nom-repertoire|Valeur obligatoire|\n|organisation_nom|chaîne de caractères|Le nom de l'organisation|etalab|Valeur obligatoire|\n|plateforme|chaîne de caractères|La plateforme de dépôt de code|GitHub|Valeur obligatoire, Valeurs autorisées : GitHub|\n|repertoire_url|chaîne de caractères (format `uri`)|L'URL vers le répertoire|https://github.com/etalab/nom-repertoire|Valeur obligatoire|\n|description|chaîne de caractères|La description du répertoire|Ce répertoire est utile|Valeur optionnelle|\n|est_fork|booléen|Indique si le répertoire est un fork|false|Valeur obligatoire|\n|date_creation|date et heure|La date de création du répertoire|2018-12-01T20:00:55Z|Valeur obligatoire|\n|derniere_mise_a_jour|date et heure|La date de dernière mise à jour du répertoire|2018-12-01T20:00:55Z|Valeur obligatoire|\n|page_accueil|chaîne de caractères|URL vers la page d'accueil du projet|https://etalab.gouv.fr|Valeur optionnelle|\n|nombre_stars|nombre entier|Le nombre de fois où le répertoire a été ajouté aux favoris|42|Valeur obligatoire, Valeur minimale : 0|\n|nombre_forks|nombre entier|Le nombre de fois où le répertoire a été forké|13|Valeur obligatoire, Valeur minimale : 0|\n|licence|chaîne de caractères|La licence du répertoire, telle que détectée par la plateforme|MIT|Valeur optionnelle|\n|nombre_issues_ouvertes|nombre entier|Le nombre d'issues actuellement ouvertes|0|Valeur obligatoire, Valeur minimale : 0|\n|langage|chaîne de caractères|Le langage principal du répertoire, tel que détecté par la plateforme|Python|Valeur optionnelle|\n|topics|chaîne de caractères|Les tags du répertoire|utile,france,opendata|Valeur optionnelle|\n\n## Notice\nThis software is available under the MIT license.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fantoineaugusti%2Ftable-schema-to-markdown","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fantoineaugusti%2Ftable-schema-to-markdown","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fantoineaugusti%2Ftable-schema-to-markdown/lists"}