├── .github └── workflows │ └── links.yml ├── .gitignore ├── CONTRIBUTING.md ├── LICENSE.md └── README.md /.github/workflows/links.yml: -------------------------------------------------------------------------------- 1 | name: Links 2 | 3 | on: 4 | repository_dispatch: 5 | workflow_dispatch: 6 | schedule: 7 | - cron: "00 18 * * *" 8 | 9 | jobs: 10 | linkChecker: 11 | runs-on: ubuntu-latest 12 | steps: 13 | - uses: actions/checkout@v4 14 | 15 | - name: Link Checker 16 | id: lychee 17 | uses: lycheeverse/lychee-action@v1 18 | 19 | #- name: Create Issue From File 20 | # if: env.lychee_exit_code != 0 21 | # uses: peter-evans/create-issue-from-file@v4 22 | # with: 23 | # title: Link Checker Report 24 | # content-filepath: ./lychee/out.md 25 | # labels: report, automated issue 26 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | ab-* 2 | .idea 3 | -------------------------------------------------------------------------------- /CONTRIBUTING.md: -------------------------------------------------------------------------------- 1 | # Contributing 2 | 3 | Your contributions are always welcome! 4 | 5 | ## Guidelines 6 | 7 | * Add section if needed. 8 | * Add section description. 9 | * Add section title to Table of contents. 10 | * Search previous suggestions before making a new one, as yours may be a duplicate. 11 | * Add your links: `* [project-name](http://example.com/) - A short description ends with a dot.` 12 | * Don't mention `JSON` in the description as it's implied. 13 | * Check your spelling and grammar. 14 | * Make sure your text editor is set to remove trailing whitespace. 15 | * Send a Pull Request. 16 | -------------------------------------------------------------------------------- /LICENSE.md: -------------------------------------------------------------------------------- 1 | # Creative Commons CC0 1.0 Universal 2 | 3 | CREATIVE COMMONS CORPORATION IS NOT A LAW FIRM AND DOES NOT PROVIDE LEGAL SERVICES. DISTRIBUTION OF THIS DOCUMENT DOES NOT CREATE AN ATTORNEY-CLIENT RELATIONSHIP. CREATIVE COMMONS PROVIDES THIS INFORMATION ON AN "AS-IS" BASIS. CREATIVE COMMONS MAKES NO WARRANTIES REGARDING THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS PROVIDED HEREUNDER, AND DISCLAIMS LIABILITY FOR DAMAGES RESULTING FROM THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS PROVIDED HEREUNDER. 4 | 5 | ### Statement of Purpose 6 | 7 | The laws of most jurisdictions throughout the world automatically confer exclusive Copyright and Related Rights (defined below) upon the creator and subsequent owner(s) (each and all, an "owner") of an original work of authorship and/or a database (each, a "Work"). 8 | 9 | Certain owners wish to permanently relinquish those rights to a Work for the purpose of contributing to a commons of creative, cultural and scientific works ("Commons") that the public can reliably and without fear of later claims of infringement build upon, modify, incorporate in other works, reuse and redistribute as freely as possible in any form whatsoever and for any purposes, including without limitation commercial purposes. These owners may contribute to the Commons to promote the ideal of a free culture and the further production of creative, cultural and scientific works, or to gain reputation or greater distribution for their Work in part through the use and efforts of others. 10 | 11 | For these and/or other purposes and motivations, and without any expectation of additional consideration or compensation, the person associating CC0 with a Work (the "Affirmer"), to the extent that he or she is an owner of Copyright and Related Rights in the Work, voluntarily elects to apply CC0 to the Work and publicly distribute the Work under its terms, with knowledge of his or her Copyright and Related Rights in the Work and the meaning and intended legal effect of CC0 on those rights. 12 | 13 | 1. __Copyright and Related Rights.__ A Work made available under CC0 may be protected by copyright and related or neighboring rights ("Copyright and Related Rights"). Copyright and Related Rights include, but are not limited to, the following: 14 | 15 | i. the right to reproduce, adapt, distribute, perform, display, communicate, and translate a Work; 16 | 17 | ii. moral rights retained by the original author(s) and/or performer(s); 18 | 19 | iii. publicity and privacy rights pertaining to a person's image or likeness depicted in a Work; 20 | 21 | iv. rights protecting against unfair competition in regards to a Work, subject to the limitations in paragraph 4(a), below; 22 | 23 | v. rights protecting the extraction, dissemination, use and reuse of data in a Work; 24 | 25 | vi. database rights (such as those arising under Directive 96/9/EC of the European Parliament and of the Council of 11 March 1996 on the legal protection of databases, and under any national implementation thereof, including any amended or successor version of such directive); and 26 | 27 | vii. other similar, equivalent or corresponding rights throughout the world based on applicable law or treaty, and any national implementations thereof. 28 | 29 | 2. __Waiver.__ To the greatest extent permitted by, but not in contravention of, applicable law, Affirmer hereby overtly, fully, permanently, irrevocably and unconditionally waives, abandons, and surrenders all of Affirmer's Copyright and Related Rights and associated claims and causes of action, whether now known or unknown (including existing as well as future claims and causes of action), in the Work (i) in all territories worldwide, (ii) for the maximum duration provided by applicable law or treaty (including future time extensions), (iii) in any current or future medium and for any number of copies, and (iv) for any purpose whatsoever, including without limitation commercial, advertising or promotional purposes (the "Waiver"). Affirmer makes the Waiver for the benefit of each member of the public at large and to the detriment of Affirmer's heirs and successors, fully intending that such Waiver shall not be subject to revocation, rescission, cancellation, termination, or any other legal or equitable action to disrupt the quiet enjoyment of the Work by the public as contemplated by Affirmer's express Statement of Purpose. 30 | 31 | 3. __Public License Fallback.__ Should any part of the Waiver for any reason be judged legally invalid or ineffective under applicable law, then the Waiver shall be preserved to the maximum extent permitted taking into account Affirmer's express Statement of Purpose. In addition, to the extent the Waiver is so judged Affirmer hereby grants to each affected person a royalty-free, non transferable, non sublicensable, non exclusive, irrevocable and unconditional license to exercise Affirmer's Copyright and Related Rights in the Work (i) in all territories worldwide, (ii) for the maximum duration provided by applicable law or treaty (including future time extensions), (iii) in any current or future medium and for any number of copies, and (iv) for any purpose whatsoever, including without limitation commercial, advertising or promotional purposes (the "License"). The License shall be deemed effective as of the date CC0 was applied by Affirmer to the Work. Should any part of the License for any reason be judged legally invalid or ineffective under applicable law, such partial invalidity or ineffectiveness shall not invalidate the remainder of the License, and in such case Affirmer hereby affirms that he or she will not (i) exercise any of his or her remaining Copyright and Related Rights in the Work or (ii) assert any associated claims and causes of action with respect to the Work, in either case contrary to Affirmer's express Statement of Purpose. 32 | 33 | 4. __Limitations and Disclaimers.__ 34 | 35 | a. No trademark or patent rights held by Affirmer are waived, abandoned, surrendered, licensed or otherwise affected by this document. 36 | 37 | b. Affirmer offers the Work as-is and makes no representations or warranties of any kind concerning the Work, express, implied, statutory or otherwise, including without limitation warranties of title, merchantability, fitness for a particular purpose, non infringement, or the absence of latent or other defects, accuracy, or the present or absence of errors, whether or not discoverable, all to the greatest extent permissible under applicable law. 38 | 39 | c. Affirmer disclaims responsibility for clearing rights of other persons that may apply to the Work or any use thereof, including without limitation any person's Copyright and Related Rights in the Work. Further, Affirmer disclaims responsibility for obtaining any necessary consents, permissions or other rights required for any use of the Work. 40 | 41 | d. Affirmer understands and acknowledges that Creative Commons is not a party to this document and has no duty or obligation with respect to this CC0 or use of the Work. 42 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Awesome JSON [![Awesome](https://cdn.jsdelivr.net/gh/sindresorhus/awesome@d7305f38d29fed78fa85652e3a63e154dd8e8829/media/badge.svg)](https://github.com/sindresorhus/awesome) 2 | A curated list of awesome JSON libraries and resources. 3 | 4 | Inspired by the [awesome](https://github.com/sindresorhus/awesome) list. 5 | 6 | [![Links](https://github.com/burningtree/awesome-json/actions/workflows/links.yml/badge.svg)](https://github.com/burningtree/awesome-json/actions/workflows/links.yml) 7 | 8 | --- 9 | 10 | * [Awesome JSON](#awesome-json) 11 | * [Applications](#applications) 12 | * [Binary Serialization](#binary-serialization) 13 | * [Browser Extensions](#browser-extensions) 14 | * [Command-line tools](#command-line-tools) 15 | * [Databases](#databases) 16 | * [Datasets](#datasets) 17 | * [Data modeling](#data-modeling) 18 | * [Data generation](#data-generation) 19 | * [Differencing](#differencing) 20 | * [Editors](#editors) 21 | * [Format Extensions](#format-extensions) 22 | * [Frontend components](#frontend-components) 23 | * [Libraries](#libraries) 24 | * [Linters](#linters) 25 | * [Online tools](#online-tools) 26 | * [Schema Specifications](#schema-specifications) 27 | * [Services](#services) 28 | * [Supersets](#supersets) 29 | * [Related formats](#related-formats) 30 | * [Resources](#resources) 31 | * [Templates](#templates) 32 | * [Testing](#testing) 33 | * [Text Editor Plugins](#text-editor-plugins) 34 | * [Transformations](#transformations) 35 | * [Tutorials](#tutorials) 36 | * [Queries](#queries) 37 | * [JSON Schema Frontend components](#json-schema-frontend-components) 38 | * [JSON Schema Tools](#json-schema-tools) 39 | * [JSON Schema Resources](#json-schema-resources) 40 | * [JSON Schema Validators](#json-schema-validators) 41 | * [Contribute](#contribute) 42 | 43 | ## Applications 44 | * [Dadroit JSON Viewer](https://dadroit.com) - Very fast JSON Viewer, supporting huge (multi gigabytes) files, JSON log (JSON-Lines and ndjson). 45 | 46 | **OS X** 47 | * [Visual JSON](https://github.com/youknowone/VisualJSON) - simple JSON pretty-viewer for Mac OS X. (inactive) 48 | * [JSONExport](https://github.com/Ahmed-Ali/JSONExport) - convert a object to a class of one of the currently supported languages. 49 | 50 | ## Binary Serialization 51 | * [BSON](https://bsonspec.org/) - Binary JSON. 52 | * [MessagePack](https://msgpack.org/) - An extremely efficient object serialization library. 53 | * [UBJSON](https://ubjson.org/) - The universally compatible format specification for binary JSON. 54 | * [CBOR](https://datatracker.ietf.org/doc/html/rfc7049) - Concise Binary Object Representation. 55 | * [PSON](https://github.com/dcodeIO/PSON) - Protocol JSON, super efficient binary serialization format. 56 | * [JSON BinPack](https://www.jsonbinpack.org) - Space-efficient binary JSON serialization format based on JSON Schema. 57 | 58 | ## Browser Extensions 59 | **Chrome** 60 | * [JSON Formatter](https://chromewebstore.google.com/detail/json-formatter/bcjindcccaagfpapjjmafapmmgkkhgoa) ([github](https://github.com/callumlocke/json-formatter)) - Makes JSON easy to read. Open source. 61 | * [JSON Viewer](https://chromewebstore.google.com/detail/json-viewer/gbmdgpbipfallnflgajpaliibnhdgobh) ([github](https://github.com/tulios/json-viewer)) - It is a Chrome extension for printing JSON and JSONP. 62 | * [JSON Finder](https://chromewebstore.google.com/detail/json-finder/flhdcaebggmmpnnaljiajhihdfconkbj) ([github](https://github.com/rapee/jsonfinder)) - Browse like you do it in Finder. 63 | * [JSON Viewer Pro](https://chromewebstore.google.com/detail/json-viewer-pro/eifflpmocdbdmepbjaopkkhbfmdgijcc) ([github](https://github.com/rbrahul/Awesome-JSON-Viewer) - An open source Chrome extension for browsing JSON with syntax highlighting and folding, or as a visual graph. 64 | * [Discoverable JSON](https://chromewebstore.google.com/detail/json-manipulator-json-to/pcakbljjigdafljigcpbmjllkbhlncjg) ([github](https://github.com/noitcudni/discoverable-json)) - Gron inspired Extension. Convert a JSON document into javascript expressions. Comes with filter, remove, find-and-replace capabilities. 65 | 66 | **Firefox** 67 | * [JSONView](https://addons.mozilla.org/en-US/firefox/addon/jsonview/) ([github](https://github.com/bhollis/jsonview)) - View JSON documents in the browser. 68 | 69 | **Safari** 70 | * [JSONAce](https://apps.apple.com/us/story/id1377753262?id=com.acrogenesis.jsonace-56Q494QF3LL) ([github](https://github.com/acrogenesis/JSONAce)) - Formats & syntax highlights JSON viewed inside of the web browser using the ACE editor. 71 | * [JSONView](https://apps.apple.com/us/story/id1377753262?id=com.acrogenesis.jsonview-56Q494QF3L) ([github](https://github.com/acrogenesis/jsonview-safari)) - A port of the JSONView Firefox extension that formats and syntax highlights JSON viewed inside of the browser 72 | 73 | ## Command-line tools 74 | * [dsq](https://github.com/multiprocessio/dsq) - Tool for running SQL queries against JSON, CSV, Excel, Parquet, and more. 75 | * [fx](https://github.com/antonmedv/fx) - A interactive terminal tool. 76 | * [jo](https://github.com/jpmens/jo) - A small utility to create JSON objects 77 | * [jsoncat](https://github.com/pantuza/jsoncat) - Pretty-print Json in terminal with colors and adjusting tabs size. 78 | * [jq](https://github.com/jqlang/jq) - A lightweight and flexible command-line JSON processor. 79 | * [jaq](https://github.com/01mf02/jaq) - A jq clone focussed on correctness, speed, and simplicity. Written in Rust. 80 | * [gojq](https://github.com/itchyny/gojq) - Pure Go implementation of jq. A bit faster and more portable. 81 | * [livejq](https://github.com/kunalsin9h/livejq) - An alternative `jq` implementation in rust for continuous parsing without crashing on invalid JSON 82 | * [json](http://trentm.com/json/) - A "json" command for massaging JSON on your Unix command line. 83 | * [json-search](https://github.com/cosmo-ray/json-search) - A small tool to search for objects/values in json files. 84 | * [jshon](https://web.archive.org/web/20240206155217/http://kmkeen.com/jshon/) - A parser designed for maximum convenience within the shell. 85 | * [jarg](http://jdp.github.io/jarg/) - Shorthand JSON and form encoding syntax in the shell. 86 | * [jsawk](https://github.com/micha/jsawk) - Like awk, but for JSON. 87 | * [json-dotenv](https://github.com/decryptus/json-dotenv) - Manipulate and extract envfiles in json format. 88 | * [gron](https://github.com/tomnomnom/gron) - Convert a JSON file into discrete assignments that are greppable. 89 | * [jid](https://github.com/simeji/jid) - Incremental Digger. Drill down JSON interactively by using filtering queries like jq. 90 | * [jiq](https://github.com/fiatjaf/jiq) - It's `jid` with `jq`. You can drill down interactively by using `jq` filtering queries. 91 | * [jv](https://github.com/maxzender/jv) - jv (for jsonviewer) helps you view your JSON. 92 | * [jl](https://github.com/chrisdone/jl) - Functional sed for JSON. 93 | * [oj](https://github.com/ohler55/ojg) - A fast and flexible command line JSON processor. 94 | * [visidata](https://github.com/saulpw/visidata) - A terminal spreadsheet-like tool for interactively exploring data. 95 | * [jc](https://github.com/kellyjonbrazil/jc) - Converts the output of many CLI tools, file-types, and common strings into JSON 96 | * [logdy](https://github.com/logdyhq/logdy-core) - jq, tail, less, grep and awk merged together and available in a clean web UI. 97 | 98 | ## Databases 99 | * [MongoDB](https://www.mongodb.com/) - an open-source document database, and the leading NoSQL database. 100 | * [RethinkDB](https://rethinkdb.com/) - An open-source distributed document database with a pleasant and powerful query language. 101 | * [EJDB](https://github.com/Softmotions/ejdb) - Embedded JSON Database engine published under MIT license. (C) 102 | * [lowdb](https://github.com/typicode/lowdb) - Flat file database built on lodash API. (Javascript) 103 | * [Lawnchair](https://github.com/brianleroux/lawnchair) - A lightweight clientside document store. (Javascript) 104 | * [JSON ODM](https://github.com/konsultaner/jsonOdm) - Object document mapper for JavaScript to use on the server or in the browser. (Javascript) 105 | * [JSON Server](https://github.com/typicode/json-server) - Get a full fake REST API with zero coding in less than 30 seconds. 106 | * [Kinto](https://github.com/Kinto/kinto) - A lightweight JSON storage service with synchronisation and sharing abilities. 107 | * [CouchDB](https://couchdb.apache.org/) - Seamless multi-master sync, that scales from Big Data to Mobile, with an Intuitive HTTP/JSON API and designed for Reliability. 108 | * [RxDB](https://github.com/pubkey/rxdb) - Event-driven JSON-Database with JSON-Schema, mango-Query and CouchDB-sync. (Javascript) 109 | * [JSONlite](https://github.com/nodesocket/jsonlite) - A simple, self-contained, serverless, zero-configuration, json document store. (Bash) 110 | 111 | ## Datasets 112 | * [country.io](http://country.io/data/) - Various country related datasets, as JSON inc currency, country codes, names and more 113 | * [countries](https://github.com/mledoze/countries) - World countries. 114 | * [MTG JSON](https://mtgjson.com/) - Up to date Magic the Gathering card data. 115 | * [Heartstone JSON](https://hearthstonejson.com/) - Up to date Hearthstone card data. 116 | * [getCountries()](https://peric.github.io/GetCountries/) - Generator for custom Countries data. 117 | 118 | ## Data modeling 119 | * [JSONModel](https://github.com/jsonmodel/jsonmodel) - Magical Data Modelling Framework. (Objective-C) 120 | 121 | ## Data generation 122 | * [jsonymize](https://github.com/cameronhunter/jsonymize) - Reads data from standard input, anonymizes, then writes to standard output. 123 | * [dyson](https://github.com/webpro/dyson) - Server for dynamic, fake JSON. (node.js) 124 | 125 | ## Differencing 126 | * [JSONPatch](https://jsonpatch.com/) - A format for describing changes to a document. 127 | * [JSON-Patch](https://github.com/Starcounter-Jack/JSON-Patch) - Lean and mean Javascript implementation of the JSON-Patch standard (RFC 6902). (Javascript) 128 | * [jiff](https://github.com/cujojs/jiff) - JSON Patch and diff based on rfc6902. (Javascript) 129 | * [json-patch-php](https://github.com/mikemccabe/json-patch-php) - implementation of JSON-patch (IETF RFC 6902) (PHP) 130 | * [dffptch](https://github.com/paldepind/dffptch) - A micro library for diffing and patching using a compact diff format. (Javascript) 131 | * [jsondiffpatch](https://github.com/benjamine/jsondiffpatch) - Diff & patch for JavaScript objects. (Javascript) 132 | 133 | ## Editors 134 | * [FrontAid CMS](https://frontaid.io/) - Content Management System that supports arbitrary data model structures. 135 | * [JSONEdit](http://mb21.github.io/JSONedit/) - User friendly, visual editor built as an AngularJS directive. 136 | * [JSON Crack](https://jsoncrack.com/) - Display your JSON as a graph 137 | 138 | ## Format Extensions 139 | * [GeoJSON](https://geojson.org/) - A geospatial data interchange format. 140 | * [JSON-LD](https://json-ld.org/) - A lightweight Linked Data format. 141 | * [JSON-RPC](https://www.jsonrpc.org/) - A stateless, light-weight remote procedure call (RPC) protocol. 142 | * [JSONP](https://en.wikipedia.org/wiki/JSONP) - Safer cross-domain Ajax with JSON-P/JSONP. 143 | * [JsonML](http://www.jsonml.org/) - A compact format for transporting XML-based markup as JSON which allows it to be losslessly converted back to its original form. 144 | * [JSON5](https://json5.org/) - a extension that aims to make it easier for humans to write and maintain by hand. 145 | * [JSON6](https://github.com/d3x0r/json6) - JSON for Humans (ES6). 146 | * [JSON 1.1/JSONX](https://json-next.github.io/) - An evolved version 1.1 with format extension for humans incl. comments, unquoted and multi-line strings, optional and trailing commas and more. 147 | * [JSON Resume](https://jsonresume.org/) - The open source initiative to create standard for resumes. 148 | * [JSON Web Tokens](https://jwt.io/) - A compact URL-safe means of representing claims to be transferred between two parties. 149 | * [JSON API](https://jsonapi.org/) - A standard for building APIs. 150 | * [Collection+JSON](http://amundsen.com/media-types/collection/) - A read/write hypermedia-type designed to support management and querying of simple collections. 151 | * [hal-json](https://stateless.group/hal_specification.html) - A set of conventions for expressing hyperlinks in either JSON or XML. 152 | * [JSON Activity Streams](https://activitystrea.ms/) - A format for syndicating social activities around the web. 153 | * [JSON-stat](https://github.com/jsonstat/jsonstat) - Simple lightweight format for data dissemination. 154 | * [/contribute.json](https://www.contributejson.org/) - Making open source contribution information easier to access, across projects. 155 | * [NDJSON](https://github.com/ndjson/ndjson-spec) (Newline delimited JSON) - a standard for delimiting JSON in stream protocols. 156 | * [survey.js](https://surveyjs.io/form-library) - JSON based survey library. 157 | * [JSON Meta Application Protocol (JMAP)](https://jmap.io/) - A protocol for synchronising JSON-based data objects efficiently, with support for push and out-of-band binary data upload/download. 158 | * [JackSON: JSON secret keeper](https://github.com/rosehgal/jackson) - JSONic way of storing secrets in config file. 159 | * [Sequence JSON](https://github.com/soundio/music-json/) - A proposal for a standard way of creating music sequence data in JSON. 160 | 161 | 162 | ## Frontend components 163 | * [JSON editor jQuery plugin](https://github.com/DavidDurman/FlexiJsonEditor) - component for you web apps/pages. (jQuery) 164 | * [jqTree](http://mbraak.github.io/jqTree/) - Widget for displaying a tree structure in html. (jQuery) 165 | * [jsTree](https://www.jstree.com/docs/json/) - jquery plugin, that provides interactive trees. (jQuery) 166 | * [Dynatable.js](https://github.com/alfajango/jquery-dynatable) - A funner, semantic, HTML5+JSON, interactive table plugin. (jQuery) 167 | * [JSON Formatter](https://github.com/mohsen1/json-formatter) - Angular directive for collapsible JSON in HTML. (AngularJS) 168 | * [react-jsonschema-form](https://rjsf-team.github.io/react-jsonschema-form/) - A React component for building Web forms from JSON Schema. (React) 169 | * [@textea/json-viewer](https://github.com/TexteaInc/json-viewer) - A React component for JSON viewer. (React) 170 | * [ngx-formly](https://github.com/ngx-formly/ngx-formly) - JSON powered / Dynamic forms for Angular 171 | 172 | ## Libraries 173 | **C** 174 | * [Jansson](https://github.com/akheron/jansson) - A C library for encoding, decoding and manipulating data. 175 | * [jsmn](https://zserge.com/jsmn.html) - A minimalistic parser in C. It can be easily integrated into the resource-limited projects or embedded systems. 176 | * [json-build](https://github.com/lcsmuller/json-build) - A minimalistic serializer in C. It can be easily integrated into the resource-limited projects or embedded systems. 177 | * [ojc](https://github.com/ohler55/ojc) - A fast JSON parser. 178 | 179 | **C++** 180 | * [ArduinoJson](https://github.com/bblanchon/ArduinoJson) - An efficient library for embedded systems. 181 | * [JSON++](https://github.com/tunnuz/json) - A self contained Flex/Bison parser for C++11. 182 | * [json11](https://github.com/dropbox/json11) - A tiny library for C++11. 183 | * [Nlohmann JSON](https://github.com/nlohmann/json) - A C++11 header-only class. 184 | * [RapidJSON](https://github.com/Tencent/rapidjson) - A fast JSON parser/generator for C++ with both SAX/DOM style API 185 | * [simdjson](https://github.com/simdjson/simdjson) - Parsing gigabytes of JSON per second. 186 | 187 | **Clojure** 188 | * [data.json](https://github.com/clojure/data.json) - parser/generator to/from Clojure data structures. 189 | 190 | **Fortran** 191 | * [JSON-Fortran](https://github.com/jacobwilliams/json-fortran) - A Fortran library for writing, reading, and manipulating JSON files and data structures. 192 | 193 | **Go** 194 | * [ojg](https://github.com/ohler55/ojg) - A collection of high performance JSON processing and generating tool. 195 | 196 | **Haskell** 197 | * [aeson-qq](https://github.com/sol/aeson-qq) - JSON quasiquoter for Haskell. 198 | * [json-schema](http://hackage.haskell.org/package/json-schema) - JSON Schema library for Haskell 199 | * [hjsonschema](http://hackage.haskell.org/package/hjsonschema) - JSON Schema Draft 4 library for Haskell 200 | 201 | **Java** 202 | * [JSON-java](https://github.com/stleary/JSON-java) - A reference implementation. 203 | * [Fast JSON Processor](https://github.com/alibaba/fastjson) 204 | * [Gson](https://github.com/google/gson) - A Java library to convert JSON to Java objects and vice-versa. 205 | * [Jackson](https://github.com/FasterXML/jackson) - A multi-purpose Java library for processing JSON data format. 206 | * [moshi](https://github.com/square/moshi) - A modern JSON library for Android and Java. 207 | * [essential-json](https://github.com/arkanovicz/essential-json) - A lightweight Java library for serialization, parsing and manipulation with a clean and precise API. 208 | * [dsl-json](https://github.com/ngs-doo/dsl-json) - A very fast streaming JSON library. Operates on byte arrays. 209 | * [mjson](https://github.com/bolerio/mjson) - Lean JSON Library for Java, with a compact, elegant API. 210 | 211 | **Javascript** 212 | * [JSON-js](https://github.com/douglascrockford/JSON-js) - JSON in JavaScript. 213 | * [JSON 3](https://bestiejs.github.io/json3/) - A modern implementation. 214 | * [oboe.js](https://github.com/jimhigson/oboe.js) - A streaming approach, speeds up web applications by providing parsed objects before the response completes. 215 | * [FracturedJsonJs](https://www.npmjs.com/package/fracturedjsonjs) - A JSON formatter that produces human-readable but fairly compact output. 216 | * [JsonHilo](https://github.com/xtao-org/jsonhilo) - Minimal lossless parse event streaming, akin to SAX. 217 | 218 | **Objective-C** 219 | * [JSONKit](https://github.com/johnezang/JSONKit) - Objective-C library. 220 | * [SBJson](https://github.com/SBJson/SBJson) - Parse one or more chunks of data. 221 | 222 | **Perl** 223 | * [JSON::Tiny](https://github.com/daoswald/JSON-Tiny) - Perl module for encoding and decoding JSON in a minimalistic way. 224 | 225 | **PL/SQL** 226 | * [PL/JSON](https://github.com/pljson/pljson) - A generic JSON object written in PL/SQL. 227 | 228 | **PHP** 229 | * [Webmozart JSON](https://github.com/webmozart/json) - A robust decoder/encoder with support for schema validation. 230 | 231 | **Python** 232 | * [simplejson](https://github.com/simplejson/simplejson) - A simple, fast, extensible encoder/decoder 233 | * [jsonpickle](http://jsonpickle.github.io/) - Library for serializing any arbitrary object graph. 234 | * [metamagic.json](https://pypi.org/project/metamagic.json/) - An ultra-fast Python 3 implementation of a JSON encoder. 235 | 236 | **Ruby** 237 | * [oj](https://github.com/ohler55/oj) - A fast JSON parser and Object marshaller as a Ruby gem. 238 | * [MultiJSON](https://github.com/intridea/multi_json) - A generic swappable back-end for JSON handling. 239 | 240 | **React** 241 | * [json2react](https://github.com/txgruppi/json2react) - Use JSON to create React Stateless Components. 242 | 243 | **.NET** 244 | * [jsonfx](https://github.com/jsonfx/jsonfx) - serialization framework for .NET. 245 | * [jsonapi-consumer](https://github.com/OKTAYKIR/jsonapi-consumer) - Client framework for consuming JSONAPI based APIs on the [JSON API standard](https://jsonapi.org). 246 | * [FracturedJson](https://www.nuget.org/packages/FracturedJson) - A formatter that produces human-readable but fairly compact output. 247 | 248 | **Scala** 249 | * [spray-json](https://github.com/spray/spray-json) - A lightweight, clean and simple implementation in Scala. 250 | * [circe](https://github.com/circe/circe) - Yet another JSON library for Scala. 251 | * [scala-jsonapi](https://github.com/scala-jsonapi/scala-jsonapi) - Support library for integrating the JSON:API spec with Play, Spray and/or Circe backends. 252 | * [jsoniter-scala](https://github.com/plokhotnyuk/jsoniter-scala) - Scala macros for compile-time generation of ultra-fast JSON codecs. 253 | 254 | **Shell** 255 | * [jshn](https://openwrt.org/docs/guide-developer/jshn) - JSON parsing and generation library in for shell scripts (Ash/Bash) 256 | 257 | **Swift** 258 | * [SwiftyJSON](https://github.com/SwiftyJSON/SwiftyJSON) - The better way to deal with data in Swift. 259 | 260 | ## Linters 261 | * [jsonlint](https://github.com/zaach/jsonlint) - Parser and validator with a CLI. (Javascript) 262 | * [JSON Lint](https://github.com/Seldaek/jsonlint) - PHP linter. (PHP) 263 | 264 | ## Online tools 265 | * [JSONLint](https://jsonlint.com/) - The JSON Validator. 266 | * [JSONCompare](https://jsoncompare.com/) - The Advanced Version of the JSON Linter. 267 | * [JSONMate](https://www.jsonmate.com/) - JSON editor, inspector and beautifier. 268 | * [JSON Editor online](https://jsoneditoronline.org/) - A web-based tool to view, edit and format. 269 | * [Collapsible JSON Formatter](http://www.bodurov.com/JsonFormatter/) - Formatter and Colorer of Raw Code. 270 | * [JSON Formatter and Validator](https://jsonformatter.curiousconcept.com/) - Formatter to help with debugging. 271 | * [JSON Generator](https://json-generator.com/) - Tool for generating random data. 272 | * [FakeJSON](https://fakejson.com/) - Web API to quickly generate fake data for your application. 273 | * [JSON to CSV](https://konklone.io/json/) - A free, in-browser JSON to CSV converter. 274 | * [CSV to JSON](https://alef.website/tools/csv-to-json) - Easy, privacy-friendly and offline-first online csv to json converter 275 | * [json2csharp](https://json2csharp.com/) - Generate c# classes from a json string or url. 276 | * [JSON Utils](http://jsonutils.com/) - Site for generating C#, VB.Net, and Javascript classes from JSON. 277 | * [geojson.io](https://geojson.io/) - Simply edit GeoJSON map data. 278 | * [jq play](https://jqplay.org/) - A playground for jq. 279 | * [json2yaml](https://www.json2yaml.com/) - Convert JSON to YAML online. 280 | * [JSON Selector Generator](http://jsonselector.com/) - A simple GUI for generating the selectors to access. 281 | * [JSON.fr](https://www.json.fr/) - Fully client-side validator and formatter. 282 | * [ObjGen](https://www.objgen.com/json) - Online live JSON generator. 283 | * [JSONPlaceholder](https://jsonplaceholder.typicode.com/) - Fake Online REST API for Testing and Prototyping. 284 | * [Extends Class](https://extendsclass.com/json-diff.html) - Diff tool to compare two files. 285 | * [JSON Schema Validate API](https://assertible.com/json-schema-validation) - A simple and free JSON Schema Validation API. 286 | * [JSONPerf](https://jsonperf.com) - A Visual, Unbiased and Up-to-Date JSON Performance Benchmark. 287 | * [FracturedJson](https://j-brooke.github.io/FracturedJson/) - Formatter that produces human-readable but fairly compact output. 288 | 289 | ## Schema Specifications 290 | * [JSON Schema](https://json-schema.org/) - a JSON based format for defining the structure of JSON data. 291 | * [Itemscript](https://code.google.com/archive/p/itemscript/) - Language for validating and specifying values. 292 | * [Kwalify](https://github.com/kvs/kwalify) - A parser, schema validator, and data binding tool 293 | * [Rx](https://rx.codesimply.com/) - Simple, Extensible Schemata. 294 | 295 | ## Services 296 | * [Exchange Rate API](https://www.exchangerate-api.com) - A simple and free API for currency exchange rate data. 297 | * [ipinfo.io](https://ipinfo.io) - JSON IP and GeoIP REST API. 298 | * [JSONProxy](https://github.com/afeld/jsonp) - Simple HTTP proxy that enables cross-domain requests to any JSON API. 299 | * [Telize](https://www.telize.com/) - JSON IP and GeoIP REST API. 300 | * [jsonpad](https://jsonpad.io/) - a simple JSON storage platform. 301 | 302 | ## Supersets 303 | * [YAML](https://yaml.org) - A human friendly data serialization standard for all programming languages. 304 | * [HanSON](https://github.com/timjansen/hanson) - JSON for Humans - with unquoted identifiers, multi-line strings and comments. 305 | * [μson](https://github.com/burningtree/uson) (uson) - a shorthand for JSON. 306 | * [HOCON](https://github.com/lightbend/config/blob/master/HOCON.md) - Human-Optimized Config Object Notation. 307 | * [ASON](https://github.com/sadmac7000/libason) - A semantically complete superset of JSON (draft). 308 | * [TOML](https://github.com/toml-lang/toml) - A minimal configuration file format that's easy to read due to obvious semantics. 309 | * [HCL](https://github.com/hashicorp/hcl) - A structured configuration language that is both human and machine friendly. 310 | 311 | ## Tutorials 312 | * [Introducing JSON](http://json.org/) 313 | * [JSON Tutorial](https://www.w3resource.com/JSON/introduction.php) - An introductory tutorial on JavaScript Object Notation (JSON). 314 | * [JSON - Rosetta Code](https://rosettacode.org/wiki/JSON) - Basic operations in different languages (57 languages in this moment). 315 | * [What is JSON and how to use it](https://ilovecoding.org/lessons/json-what-is-json-and-how-to-use-it) - Video tutorial for beginners. 316 | * [jq Primer: Munging JSON Data](https://andrew.gibiansky.com/) - How jq can be used to process JSON files just as effectively as traditional Unix tools. 317 | 318 | ## Related formats 319 | * [AXON](https://github.com/intellimath/pyaxon) - A simple text based format for interchanging of objects, documents and data. It tries to combine the best of JSON, XML and YAML. 320 | * [CSON](https://github.com/bevry/cson) - CoffeeScript-Object-Notation. JSON for CoffeeScript objects. 321 | * [MSON](https://github.com/apiaryio/mson) - Markdown syntax compatible with describing JSON and JSON Schema. 322 | * [ArchieML](http://archieml.org/) - Structured text format optimized for human writability. 323 | 324 | ## Resources 325 | * [Type-o-rama](https://github.com/stereobooster/type-o-rama) - JS type systems interportability, comparison of different JS type systems and conversion between them. 326 | * [Awesome jq](https://github.com/fiatjaf/awesome-jq) - A curated list of awesome jq tools and resources. 327 | 328 | ## Templates 329 | * [Jsonnet](https://jsonnet.org/) - A domain specific configuration language that helps you define JSON data. 330 | * [rabl](https://github.com/nesquena/rabl) - General ruby templating with json, bson, xml, plist and msgpack support. (Ruby) 331 | * [json2html](http://json2html.com/) - HTML templating library with wrappers for both jQuery and Node.js. (Javascript) 332 | 333 | ## Testing 334 | * [JSON Test](http://www.jsontest.com/) - Testing platform for services utilizing JavaScript Object Notation (JSON). 335 | * [JSONassert](https://github.com/skyscreamer/JSONassert) - Write JSON unit tests in less code. Great for testing REST interfaces. (Java) 336 | * [JsonUnit](https://github.com/lukas-krecan/JsonUnit) - A library that simplifies JSON comparison in unit tests. It's strongly inspired by XmlUnit. 337 | * [JSON Parsing Test Suite](https://github.com/nst/JSONTestSuite) - A very complete test suite and validation framework. 338 | 339 | ## Text Editor Plugins 340 | **Emacs** 341 | * [JSON Reformat](https://github.com/gongo/json-reformat) - Reformat tool. 342 | 343 | **Vim** 344 | * [vim-json](https://github.com/elzr/vim-json) - A better JSON for Vim: distinct highlighting of keywords vs values, JSON-specific (non-JS) warnings, quote concealing. Pathogen-friendly. 345 | 346 | **Visual Studio Code** 347 | * [FracturedJsonVsc](https://marketplace.visualstudio.com/items?itemName=j-brooke.fracturedjsonvsc) - Formatter that produces human-readable but fairly compact output. 348 | 349 | **Neovim** 350 | * [nvim-jqx](https://github.com/gennaro-tedesco/nvim-jqx) - Browse and query json files in neovim from the quickfix window. (Lua) 351 | 352 | ## Transformations 353 | * [json-sharp](https://github.com/globocom/json-sharp) - Javascript tool to process operations on pure JSON objects. (Javascript) 354 | * [json2json](https://github.com/joelvh/json2json) - Transform (reformat) structures from one to another. (Javascript) 355 | * [trans](https://github.com/gabesoft/trans) - The ultimate object transformer. (Javascript) 356 | * [osmtogeojson](https://github.com/tyrasd/osmtogeojson) - Converts OSM data to GeoJSON. (Javascript) 357 | * [fast-xml-parser](https://github.com/NaturalIntelligence/fast-xml-parser) - Fast XML to JSON and vice versa javascript/JSON conversion. 358 | * [x2js](https://github.com/abdolence/x2js) - XML to JSON and vice versa javascript conversion functions. (Javascript) 359 | * [JSONC](https://github.com/tcorral/JSONC) - JSON compressor and decompressor. (Javascript) 360 | * [JsonMapper](https://github.com/cweiske/jsonmapper) - Map nested structures onto PHP classes (PHP) 361 | * [SassyJSON](https://github.com/KittyGiraudel/SassyJSON) - Sass-powered API. (Sass) 362 | * [json.human.js](http://marianoguerra.github.io/json.human.js/) - A small library to convert a JSON object into a human readable HTML representation that is easy to style for different purposes. 363 | * [JSONtoFoundation](https://github.com/fmscode/JSONtoFoundation) - OS X utility that converts a JSON object to a Foundation object that can be used in Cocoa/Cocoa Touch development. (Swift) 364 | * [fanci](https://github.com/liip/fanci) - Extract, rename and transform JSON based on a template. (node.js) 365 | * [Pinch](https://github.com/Baggz/Pinch) - String.replace for JavaScript objects. (Javascript) 366 | * [deepjson](https://www.npmjs.com/package/deepjson/) - A better way to load big json config files. (node.js) 367 | * [jsontl](https://github.com/DoublePrecisionSoftware/jsontl) - allow transformation using a JSON-based transformation language. (node.js) 368 | * [json-transforms](https://github.com/ColinEberhardt/json-transforms) - A recursive, pattern-matching, approach to transforming JSON structures. 369 | * [normalizr](https://github.com/paularmstrong/normalizr) - Normalizes nested JSON according to a schema. (Javascript) 370 | * [JSON-populate](https://github.com/eiriklv/json-populate) - Tool for populating JSON data with infinitely recursive circular references. Sort of like Falcor, but for plain JSON. 371 | * [CircularJSON](https://github.com/WebReflection/circular-json) - JSON does not handle circular references. Now it does. 372 | * [Sawmill](https://github.com/logzio/sawmill) - JSON transformation library (Java) 373 | * [nimnjs](https://github.com/NaturalIntelligence/nimnjs) - JSON to nimn bidirectional converter. 374 | * [stylops](https://github.com/cruel-intentions/stylops) - CSS subset to JSON conversion. (node.js) 375 | 376 | ## Queries 377 | * [dasel](https://github.com/tomwright/dasel) - Query and update data structures using selectors from the command line. Comparable to [jq](https://github.com/jqlang/jq) / [yq](https://github.com/kislyuk/yq) but supports JSON, YAML, TOML and XML with zero runtime dependencies. 378 | * [JMESPath](https://jmespath.org/) - A query language for JSON. 379 | * [JSON Mask](https://github.com/nemtsov/json-mask) - Tiny language and engine for selecting specific parts of a JS object, hiding the rest. (Javascript) 380 | * [JSONiq](https://www.jsoniq.org/) - The JSON Query Language. 381 | * [ObjectPath](https://objectpath.org/) - The agile query language for semi-structured data. (Python) 382 | * [DefiantJS](https://www.defiantjs.com/) - Lightning-fast searches using XPath expressions, and transform using XSL. (Javascript) 383 | * [JSONSelect](https://github.com/lloyd/JSONSelect) - CSS-like selectors. (Javascript) 384 | * [JSONPath](https://goessner.net/articles/JsonPath/) - XPath implementation. (Javascript/PHP) 385 | * [searchjs](https://github.com/deitch/searchjs) - A library for filtering based on a json SQL-like language. 386 | * [json-rel](https://github.com/slurmulon/json-where) - Transparent references in JSON. 387 | * [JSONata](https://jsonata.org/) - Query and transformation language used in Node-RED, supports function expressions. 388 | 389 | ## JSON Schema Frontend components 390 | * [JSON Editor](https://github.com/jdorn/json-editor) - JSON Schema Based Editor. (jQuery) 391 | * [angular-schema-form](https://github.com/json-schema-form/angular-schema-form) - Generate forms. (AngularJS) 392 | * [JSON Schema View](https://github.com/mohsen1/json-schema-view) - An AngularJS directive for rendering JSON Schema in HTML (AngularJS) 393 | * [Angular JSON Schema Form](https://github.com/mohsen1/angular-json-schema-form) - Angular directive for making forms out of JSON Schema. (AngularJS) 394 | * [AlpacaJS](http://www.alpacajs.org) - Generates JSON Schema driven forms on top of Bootstrap, jQuery Mobile, jQuery UI and HTML (jQuery) 395 | 396 | 397 | ## JSON Schema Tools 398 | * [prmd](https://github.com/interagent/prmd) - Tools and doc generation for HTTP APIs. 399 | * [generate-schema](https://github.com/Nijikokun/generate-schema) - Effortlessly convert your JSON Object to JSON Schema, Mongoose Schema, or a Generic template for quick documentation / upstart. 400 | * [Docson](https://github.com/lbovet/docson) - Documentation for your types. 401 | * [Orderly JSON](https://github.com/lloyd/orderly) - A textual format for describing JSON compiled into JSONSchema. 402 | * [jsonschema2pojo](https://github.com/joelittlejohn/jsonschema2pojo) - Generates Java types and annotates those types for data-binding with Jackson 1.x or 2.x, Gson, etc. 403 | * [Matic](https://github.com/mattyod/matic) - Build tool for generating HTML documentation. 404 | * [JSON Schema + Faker](https://github.com/json-schema-faker/json-schema-faker) - Fake your schemas. 405 | * [DLL.js](https://github.com/moll/js-ddl) - Gets you a JSON Schema from PostgreSQL or SQLite3. 406 | * [JSONSchema.net](https://jsonschema.net//) - JSON Schema generator from JSON object. 407 | * [js-schema](https://github.com/molnarg/js-schema) - A new way of describing object schemas in JavaScript. It has a clean and simple syntax, and it is capable of serializing to/from the popular JSON Schema format. 408 | * [aptos](https://github.com/pennsignals/aptos) - A tool for validating data using JSON Schema and converting JSON Schema documents into different data-interchange formats. 409 | * [JSON Schema $Ref Parser](https://github.com/APIDevTools/json-schema-ref-parser) - Parse, resolve, and dereference JSON Schema $ref pointers 410 | 411 | ## JSON Schema Resources 412 | * [Understanding JSON Schema](https://spacetelescope.github.io/understanding-json-schema/) - A website aiming to provide more accessible documentation for JSON schema. 413 | * [JSON Schema Store](https://www.schemastore.org/json/) - A collection of popular schemas. 414 | * [Using JSON Schema](http://usingjsonschema.com/) - a Book and GitHub project, showing how JSON Schema can be used for a variety of tasks and in different programming contexts. 415 | * [Awesome JSON Schema](https://github.com/sourcemeta/awesome-jsonschema) - A curated list of awesome JSON Schema resources, tutorials, tools, and more. 416 | 417 | ## JSON Schema Validators 418 | **Javascript and Node.js** 419 | * [json-schema-benchmark](https://github.com/ebdrup/json-schema-benchmark) - Performance benchmark for Node.js validators. 420 | * [is-my-json-valid](https://github.com/mafintosh/is-my-json-valid) - A validator that uses code generation to be extremely fast. 421 | * [jsen](https://github.com/bugventure/jsen) - A validator built for speed. 422 | * [themis](https://github.com/playlyfe/themis) - A blazing fast validator. 423 | * [jsck](https://github.com/pandastrike/jsck) - JSON Schema Compiled checK. 424 | * [z-schema](https://github.com/zaggino/z-schema) - validator written in JavaScript for NodeJS and Browsers. 425 | * [jjv](https://github.com/acornejo/jjv) - Javascript Library for Schema Validation. 426 | * [request-validator](https://github.com/bugventure/request-validator) - Flexible request validator middleware for express and connect. 427 | * [tv4](https://github.com/geraintluff/tv4) - Tiny Validator. 428 | * [ajv](https://github.com/ajv-validator/ajv) - The fastest validator. Supports v5/6 proposals. 429 | 430 | **Java and Kotlin** 431 | * [Medeia Validator](https://github.com/worldturner/medeia-validator) - Compliant (draft-04/06/07) and fast streaming validator written in Kotlin 432 | 433 | **PHP** 434 | * [JSON Schema for PHP](https://github.com/justinrainbow/json-schema) - PHP implementation of JSON schema. 435 | * [JSON Guard](https://json-guard.thephpleague.com) - A validator for JSON Schema Draft 4. 436 | 437 | **Python** 438 | * [jsonschema](https://github.com/python-jsonschema/jsonschema) - Python implementation of jsonschema. 439 | * [JSON Schema Toolkit](https://github.com/petrounias/json-schema-toolkit) - Programmatic building of JSON schemas (recursive field mappings) with validation, a Django JSON Field, and native PostgreSQL JSON type constraints. 440 | 441 | **Ruby** 442 | * [Ruby JSON Schema Validator](https://github.com/voxpupuli/json-schema) - validating against a JSON schema conforming to JSON Schema Draft 4. 443 | 444 | ## Contribute 445 | Contributions welcome! Read the [contribution guidelines](CONTRIBUTING.md) first. 446 | 447 | ## License 448 | [![CC0](https://licensebuttons.net/p/zero/1.0/88x31.png)](https://creativecommons.org/publicdomain/zero/1.0/) 449 | --------------------------------------------------------------------------------