{"id":13941497,"url":"https://github.com/pponugo/excel2jsonschema","last_synced_at":"2025-07-20T04:31:35.370Z","repository":{"id":57231615,"uuid":"65154594","full_name":"pponugo/excel2jsonschema","owner":"pponugo","description":null,"archived":false,"fork":false,"pushed_at":"2024-04-08T15:12:34.000Z","size":137,"stargazers_count":8,"open_issues_count":4,"forks_count":17,"subscribers_count":2,"default_branch":"master","last_synced_at":"2024-12-31T09:43:53.622Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"JavaScript","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/pponugo.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":"2016-08-07T21:20:47.000Z","updated_at":"2024-08-13T14:48:36.000Z","dependencies_parsed_at":"2024-11-27T10:41:07.251Z","dependency_job_id":null,"html_url":"https://github.com/pponugo/excel2jsonschema","commit_stats":{"total_commits":26,"total_committers":3,"mean_commits":8.666666666666666,"dds":"0.15384615384615385","last_synced_commit":"cc3c4afd8effeec785063549b281569349f50f7e"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/pponugo/excel2jsonschema","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pponugo%2Fexcel2jsonschema","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pponugo%2Fexcel2jsonschema/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pponugo%2Fexcel2jsonschema/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pponugo%2Fexcel2jsonschema/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pponugo","download_url":"https://codeload.github.com/pponugo/excel2jsonschema/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pponugo%2Fexcel2jsonschema/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":266067260,"owners_count":23871324,"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":[],"created_at":"2024-08-08T02:01:20.060Z","updated_at":"2025-07-20T04:31:33.502Z","avatar_url":"https://github.com/pponugo.png","language":"JavaScript","readme":"[![js-standard-style](https://img.shields.io/badge/code%20style-standard-brightgreen.svg)](http://standardjs.com/)\n[![Dependency Status](https://dependencyci.com/github/pponugo/excel2jsonschema/badge)](https://dependencyci.com/github/pponugo/excel2jsonschema)\n[![Build Status](https://travis-ci.org/pponugo/excel2jsonschema.svg?branch=master)](https://travis-ci.org/pponugo/excel2jsonschema)\n[![Coverage Status](https://coveralls.io/repos/github/pponugo/excel2jsonschema/badge.svg?branch=master)](https://coveralls.io/github/pponugo/excel2jsonschema?branch=master)\n# Generate JSON Schema files from Excel Sheet\n\n## Background\nIn Todays world, RESTful API's and **JSON** have become the format of choice for **APIs** and applications. Initillay, there was no common standard to describe the RESTful API's or request/response data strcutres on par with SOAP servcies (WSDL/XSD). To bring the same standards, [JSON Schema](http://json-schema.org/) came with specification and solved problem of describing RESTful API's clear, human- and machine-readable documentation.\n\nHowever, JSON Schema is **trickier** to work with for many people. Creating the JSON Schema files **manually** is **cumbersome** and **error prone**. On other hand, tables are just simpler for people to understand and organize. More importantly, Excel provides great tools manipulating and organizing the table structure data.\n\n## What is excel2jsonschema CLI tool?\nThe **excel2jsonschema** CLI tool, allows one to describe the JSON Schema in table format and the CLI tool generates JSON Schema files from table format (Excel Sheet).\n###Example\n####Input Excel\n|Name|Property|Type|Description|\n|----|--------|----|------------|\n|Product|product_id|string|Unique identifier representing a specific product for a given latitude \u0026 longitude. For example, uberX in San Francisco| |will have a different product_id than uberX in Los Angeles.|\n|Product|description|string|Description of product.|\n|Product|display_name|string|Display name of product.|\n|Product|capacity|string|Capacity of product. For example, 4 people.|\n|Product|image|string|Image URL representing the product.|\n####Output JSON Schema\n```json\n{\n    \"$schema\": \"http://json-schema.org/draft-04/schema#\",\n    \"title\": \"Product\",\n    \"description\": \"Product\",\n    \"type\": \"object\",\n    \"properties\": {\n        \"product_id\": {\n            \"description\": \"Unique identifier representing a specific product for a given latitude \u0026 longitude. For example, uberX in San Francisco will have a different product_id than uberX in Los Angeles.\",\n            \"type\": \"string\"\n        },\n        \"description\": {\n            \"description\": \"Description of product.\",\n            \"type\": \"string\"\n        },\n        \"display_name\": {\n            \"description\": \"Display name of product.\",\n            \"type\": \"string\"\n        },\n        \"capacity\": {\n            \"description\": \"Capacity of product. For example, 4 people.\",\n            \"type\": \"string\"\n        },\n        \"image\": {\n            \"description\": \"Image URL representing the product.\",\n            \"type\": \"string\"\n        }\n    },\n    \"required\": []\n}\n```\n\n## Install\n```npm install -g excel2jsonschema```\n\n## Usage\n```\nHow to Execute:\n  excel2jsonschema -i ./sample.xls -s Schema -o ./dist\n\nUsage: excel2jsonschema [options]\n  Options:\n  -i, --inputExcelFile \u003cinputExcelFile\u003e  'File Localtion' which contains Schema definations\n  -s, --sheetName \u003csheetName\u003e            'Sheet Name' which contains Schema definations\n  -o, --outputDir \u003coutputDir\u003e            'Output Directory' where JSON Schema files should be generated## Install\n  -e, --embedded \u003cembedded\u003e              'Embedded' If embedded Schema should be generated (default: false)\n\n```\n## Examples\n* [sample.xlsx](https://github.com/pponugo/excel2jsonschema/blob/master/example/sample.xlsx)\n* [advanced-sample.xlsx](https://github.com/pponugo/excel2jsonschema/blob/master/example/advanced-sample.xlsx)\n","funding_links":[],"categories":["JavaScript"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpponugo%2Fexcel2jsonschema","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpponugo%2Fexcel2jsonschema","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpponugo%2Fexcel2jsonschema/lists"}