Skip to content

JSON

Awesome JSON Awesome

精选的 JSON 库和资源列表.

灵感来自 awesome 列表.

Applications

OS X * Visual JSON (github) - 适用于 Mac OS X 的简单 JSON 漂亮查看器. * JSONExport - 将对象转换为当前支持的语言之一的类.

Binary Serialization

  • BSON - 二进制 JSON.
  • MessagePack - 一个极其高效的对象序列化库.
  • UBJSON - 二进制 JSON 的通用兼容格式规范.
  • CBOR - 简洁的二进制对象表示.
  • PSON - 协议 JSON,超高效的二进制序列化格式.
  • JSON BinPack - 基于 JSON Schema 的节省空间的二进制 JSON 序列化格式.

Browser Extensions

Chrome * JSON Formatter (github ) - 使 JSON 易于阅读. 开源. * JSON Viewer (github) - 它是用于打印 JSON 和 JSONP 的 Chrome 扩展. * JSON Browser (github) - 在 JSON 模式的帮助下浏览 JSON 网络. * JSON Finder (github) - 像在 Finder 中一样浏览. * JSON Viewer Pro (github - 一个开源的 Chrome 扩展,用于浏览带有语法高亮和折叠的 JSON,或作为可视化图表. * Discoverable JSON (github ) - Gron 启发扩展. 将 JSON 文档转换为 javascript 表达式. 带有过滤、删除、查找和替换功能.

Firefox * JSONView (github) - 在浏览器中查看 JSON 文档.

Safari * JSONAce (github) - 格式和语法突出显示使用 ACE 编辑器在 Web 浏览器中查看的 JSON. * JSONView (github) - JSONView Firefox 扩展的一个端口,其格式和语法突出显示在浏览器内部查看的 JSON

Command-line tools

  • dsq - 针对 JSON、CSV、Excel、Parquet 等运行 SQL 查询的工具.
  • fx - 交互式终端工具.
  • jo - 创建 JSON 对象的小工具
  • jsoncat - 在带有颜色和调整选项卡大小的终端中漂亮打印 Json.
  • jq - 轻量级且灵活的命令行 JSON 处理器.
  • json - 用于在 Unix 命令行上处理 JSON 的“json”命令.
  • jshon - 为 shell 内的最大便利而设计的解析器.
  • jarg - 在 shell 中简写 JSON 和表单编码语法.
  • jsawk - 类似于 awk,但用于 JSON.
  • json-dotenv - 以 json 格式操作和提取 envfiles.
  • gron - 将 JSON 文件转换为可 greppable 的离散分配.
  • jid - 增量挖掘机. 通过使用像 jq 这样的过滤查询以交互方式向下钻取 JSON.
  • jiq - 这是 jidjq. 您可以使用“jq”过滤查询以交互方式向下钻取.
  • jv - jv(用于 jsonviewer)帮助您查看您的 JSON.
  • jl - JSON 的功能性 sed.
  • oj - 快速灵活的命令行 JSON 处理器.
  • visidata - 一种类似终端电子表格的工具,用于交互式探索数据.

Databases

  • MongoDB - 开源文档数据库和领先的 NoSQL 数据库.
  • RethinkDB - 一个开源分布式文档数据库,具有令人愉悦且功能强大的查询语言.
  • EJDB - 在 MIT 许可下发布的嵌入式 JSON 数据库引擎. (C)
  • lowdb - 基于 lodash API 构建的平面文件数据库. (JavaScript)
  • Lawnchair - 轻量级客户端文档存储. (JavaScript)
  • JSON ODM - 用于在服务器或浏览器中使用的 JavaScript 的对象文档映射器. (JavaScript)
  • JSON Server - 在不到 30 秒的时间内获得零编码的完整假 REST API.
  • Kinto - 具有同步和共享能力的轻量级 JSON 存储服务.
  • CouchDB - 无缝多主同步,从大数据扩展到移动,具有直观的 HTTP/JSON API 并专为可靠性而设计.
  • RxDB - 事件驱动的 JSON 数据库,带有 JSON 模式、芒果查询和 CouchDB 同步. (JavaScript)
  • JSONlite - 一个简单的、独立的、无服务器的、零配置的 json 文档存储. (重击)

Datasets

  • country.io - 各种国家相关的数据集,如 JSON inc 货币、国家代码、名称等
  • countries - 世界各国.
  • vat-rates - 所有欧盟国家的增值税税率.
  • MTG JSON - 最新的 Magic the Gathering 卡数据.
  • Heartstone JSON - 最新的《炉石传说》卡片数据.
  • getCountries() - 自定义国家数据生成器.

Data modeling

  • JSONModel - 神奇的数据建模框架. (目标-C)

Data generation

  • jsonymize - 从标准输入读取数据,匿名化,然后写入标准输出.
  • dyson - 用于动态、假 JSON 的服务器. (node.js)

Differencing

  • JSONPatch - 一种描述文档更改的格式.
  • JSON-Patch - JSON-Patch 标准 (RFC 6902) 的精益和平均 Javascript 实现. (JavaScript)
  • jiff - 基于 rfc6902 的 JSON 补丁和差异. (JavaScript)
  • json-patch-php - 实施 JSON 补丁 (IETF RFC 6902) (PHP)
  • dffptch - 一个微型库,用于使用紧凑的差异格式进行差异和修补. (JavaScript)
  • jsondiffpatch - JavaScript 对象的差异和补丁. (JavaScript)

Editors

  • JSONEdit - 作为 AngularJS 指令构建的用户友好的可视化编辑器.

Format Extensions

  • GeoJSON - 地理空间数据交换格式.
  • JSON-LD - 一种轻量级的关联数据格式.
  • JSON-RPC - 无状态、轻量级远程过程调用 (RPC) 协议.
  • JSONP - 使用 JSON-P/JSONP 的更安全的跨域 Ajax.
  • JsonML - 一种紧凑的格式,用于将基于 XML 的标记传输为 JSON,允许它无损地转换回其原始形式.
  • JSON5 - 旨在使人类更容易手工编写和维护的扩展.
  • JSON6 - 人类 JSON (ES6).
  • JSON 1.1/JSONX - 一个进化版 1.1,具有人类格式扩展,包括. 注释、未加引号和多行的字符串、可选和结尾的逗号等等.
  • JSON Resume - 创建简历标准的开源计划.
  • JSON Web Tokens - 一种紧凑的 URL 安全方式,用于表示要在两方之间转移的声明.
  • JSON API - 构建 API 的标准.
  • Collection+JSON - 一种读/写超媒体类型,旨在支持简单集合的管理和查询.
  • hal-json - 一组用于在 JSON 或 XML 中表示超链接的约定.
  • JSON Activity Streams - 一种用于在网络上联合社交活动的格式.
  • JSON-stat - 用于数据传播的简单轻量级格式.
  • /contribute.json - 使开源贡献信息更易于跨项目访问.
  • JSON Table Schema - 表格数据的简单模式
  • NDJSON (换行符分隔的 JSON)- 在流协议中分隔 JSON 的标准.
  • survey.js - 基于 JSON 的调查库.
  • JSON Meta Application Protocol (JMAP) - 一种用于有效同步基于 JSON 的数据对象的协议,支持推送和带外二进制数据上传/下载.
  • JackSON: JSON secret keeper - 在配置文件中存储秘密的 JSONic 方式.

Frontend components

  • JSON editor jQuery plugin - 为您的网络应用程序/页面提供的组件. (jQuery)
  • jqTree - 用于在 html 中显示树结构的小部件. (jQuery)
  • jsTree - jquery 插件,提供交互式树. (jQuery)
  • Dynatable.js - 一个更有趣的语义化 HTML5+JSON 交互式表格插件. (jQuery)
  • JSON Formatter - 用于 HTML 中可折叠 JSON 的 Angular 指令. (角度)
  • react-jsonschema-form - 用于从 JSON 模式构建 Web 表单的 React 组件. (反应)
  • ngx-formly - Angular 的 JSON 驱动/动态表单

Libraries

C * Jansson - 用于编码、解码和操作数据的 AC 库. * jsmn - 一个简约的 C 语言解析器.它可以很容易地集成到资源有限的项目或嵌入式系统中. * json-build - C 中的简约序列化器.它可以很容易地集成到资源受限的项目或嵌入式系统中. * ojc - 一个快速的 JSON 解析器.

C++ * ArduinoJson - 一个高效的嵌入式系统库. * JSON++ - 用于 C++11 的自包含 Flex/Bison 解析器. * json11 - C++11 的小型库. * Nlohmann JSON - 一个 C++11 头文件类. * RapidJSON - 具有 SAX/DOM 样式 API 的 C++ 快速 JSON 解析器/生成器 * simdjson - 每秒解析千兆字节的 JSON.

Clojure * data.json - 解析器/生成器到/从 Clojure 数据结构.

Fortran * JSON-Fortran - 用于编写、读取和操作 JSON 文件和数据结构的 Fortran 库.

Go * ojg - 高性能JSON处理和生成工具的集合.

Haskell * aeson-qq -Haskell 的 JSON 准引号. * json-schema - 用于 Haskell 的 JSON 架构库 * hjsonschema - 用于 Haskell 的 JSON Schema Draft 4 库

Java * JSON-java - 参考实施. * Fast JSON Processor * Gson - A Java library to convert JSON to Java objects and vice-versa. * Jackson - 用于处理 JSON 数据格式的多用途 Java 库. * moshi - 适用于 Android 和 Java 的现代 JSON 库. * essential-json - 一个轻量级的 Java 库,用于序列化、解析和操作,具有干净和精确的 API. * dsl-json - 一个非常快速的流式 JSON 库. 对字节数组进行操作. * mjson - 用于 Java 的精益 JSON 库,具有紧凑、优雅的 API.

Javascript * JSON-js - JavaScript 中的 JSON. * JSON 3 - 现代实施. * oboe.js - 一种流式方法,通过在响应完成之前提供已解析的对象来加速 Web 应用程序. * FracturedJsonJs - 一种 JSON 格式化程序,可生成人类可读但相当紧凑的输出.

Objective-C * JSONKit - 目标 C 库. * SBJson - 解析一个或多个数据块.

Perl * JSON::Tiny - 用于以简约方式编码和解码 JSON 的 Perl 模块.

PL/SQL * PL/JSON - 用 PL/SQL 编写的通用 JSON 对象.

PHP * Webmozart JSON - 一个强大的解码器/编码器,支持模式验证.

Python * simplejson - 一个简单、快速、可扩展的编码器/解码器 * jsonpickle - 用于序列化任意对象图的库. * metamagic.json - JSON 编码器的超快 Python 3 实现.

Ruby * oj - 作为 Ruby gem 的快速 JSON 解析器和对象编组器. * MultiJSON - 用于 JSON 处理的通用可交换后端.

React * json2react - 使用 JSON 创建 React 无状态组件.

.NET * jsonfx - .NET 的序列化框架. * jsonapi-consumer - 用于使用基于 JSONAPI 的 API 的客户端框架 JSON API standard. * FracturedJson - 生成人类可读但相当紧凑的输出的格式化程序.

Scala * spray-json - Scala 中的轻量级、干净和简单的实现. * circe - Scala 的另一个 JSON 库. * scala-jsonapi - 用于将 JSON:API 规范与 Play、Spray 和/或 Circe 后端集成的支持库. * jsoniter-scala - 用于编译时生成超快 JSON 编解码器的 Scala 宏.

Shell * jshn - 用于 shell 脚本 (Ash/Bash) 的 JSON 解析和生成库

Swift * SwiftyJSON - 在 Swift 中处理数据的更好方式.

Linters

  • jsonlint - 带有 CLI 的解析器和验证器. (JavaScript)
  • JSON Lint - PHP 棉绒. (PHP)

Online tools

Schema Specifications

  • JSON Schema - 一种基于 JSON 的格式,用于定义 JSON 数据的结构.
  • Itemscript - 用于验证和指定值的语言.
  • Kwalify - 解析器、模式验证器和数据绑定工具
  • Rx - 简单、可扩展的模式.

Services

  • Exchange Rate API - 一个简单且免费的货币汇率数据 API.
  • ipinfo.io - JSON IP 和 GeoIP REST API.
  • JSONProxy - 简单的 HTTP 代理,支持对任何 JSON API 的跨域请求.
  • Myjson - 适用于您的网络或移动应用程序的简单商店.
  • Telize - JSON IP 和 GeoIP REST API.
  • jsonpad - 一个简单的 JSON 存储平台.

Supersets

  • YAML - 适用于所有编程语言的人性化数据序列化标准.
  • HanSON - JSON for Humans - 带有不带引号的标识符、多行字符串和注释.
  • μson (uson) - JSON 的简写.
  • HOCON - 人工优化的配置对象表示法.
  • ASON - 语义完整的 JSON 超集(草案).
  • TOML - 由于语义明显,易于阅读的最小配置文件格式.
  • HCL - 一种人机友好的结构化配置语言.

Tutorials

  • AXON - 一种简单的基于文本的格式,用于交换对象、文档和数据. 它试图结合 JSON、XML 和 YAML 的优点.
  • CSON - CoffeeScript 对象表示法. CoffeeScript 对象的 JSON.
  • MSON - 与描述 JSON 和 JSON Schema 兼容的 Markdown 语法.
  • ArchieML - 针对人类可写性优化的结构化文本格式.

Resources

  • Type-o-rama - JS 类型系统的互移植性,不同 JS 类型系统的比较以及它们之间的转换.
  • Awesome jq - 精选的 jq 工具和资源列表.

Templates

  • Jsonnet - 一种特定领域的配置语言,可帮助您定义 JSON 数据.
  • rabl - 通用 ruby​​ 模板,支持 json、bson、xml、plist 和 msgpack. (红宝石)
  • json2html - 带有 jQ​​uery 和 Node.js 包装器的 HTML 模板库. (JavaScript)

Testing

  • JSON Test - 使用 JavaScript 对象表示法 (JSON) 的服务测试平台.
  • JSONassert - 用更少的代码编写 JSON 单元测试. 非常适合测试 REST 接口. (爪哇)
  • JsonUnit - 一个在单元测试中简化 JSON 比较的库. 它受到 XmlUnit 的强烈启发.
  • JSON Parsing Test Suite - A very complete test suite and validation framework.

Text Editor Plugins

Emacs * JSON Reformat - 重新格式化工具.

Vim * vim-json - 更好的 Vim JSON:关键字与值的不同突出显示、特定于 JSON(非 JS)的警告、引号隐藏. 病原体友好.

Visual Studio Code * FracturedJsonVsc - 产生人类可读但相当紧凑的输出的格式化程序.

Neovim * nvim-jqx - 从 quickfix 窗口浏览和查询 neovim 中的 json 文件. (Lua)

Transformations

  • json-sharp - 用于处理纯 JSON 对象操作的 Javascript 工具. (JavaScript)
  • json2json - 将结构从一个转换(重新格式化)到另一个. (JavaScript)
  • trans - 终极对象变形金刚. (JavaScript)
  • osmtogeojson - 将 OSM 数据转换为 GeoJSON. (JavaScript)
  • fast-xml-parser - 快速 XML 到 JSON,反之亦然 javascript/JSON 转换.
  • x2js - XML 到 JSON,反之亦然 javascript 转换功能. (JavaScript)
  • JSONC - JSON 压缩器和解压缩器. (JavaScript)
  • JsonMapper - 将嵌套结构映射到 PHP 类 (PHP)
  • SassyJSON - Sass 驱动的 API. (萨斯)
  • json.human.js - 一个小型库,用于将 JSON 对象转换为易于为不同目的设置样式的人类可读 HTML 表示形式.
  • JSONtoFoundation - 将 JSON 对象转换为可用于 Cocoa/Cocoa Touch 开发的 Foundation 对象的 OS X 实用程序. (迅速)
  • fanci - 基于模板提取、重命名和转换 JSON. (node.js)
  • Pinch - JavaScript 对象的 String.replace. (JavaScript)
  • deepjson - 加载大型 json 配置文件的更好方法. (node.js)
  • jsontl - 允许使用基于 JSON 的转换语言进行转换. (node.js)
  • json-transforms - 一种递归的、模式匹配的、转换 JSON 结构的方法.
  • normalizr - 根据模式规范化嵌套的 JSON. (JavaScript)
  • JSON-populate - 用于使用无限递归循环引用填充 JSON 数据的工具. 有点像 Falcor,但用于纯 JSON.
  • CircularJSON - JSON 不处理循环引用. 现在可以了.
  • Sawmill - JSON 转换库 (Java)
  • nimnjs - JSON 到 nimn 双向转换器.
  • stylops - CSS 子集到 JSON 的转换. (node.js)

Queries

  • dasel - 使用命令行中的选择器查询和更新数据结构. 相当于 jq / yq 但支持具有零运行时依赖性的 JSON、YAML、TOML 和 XML.
  • JMESPath - JSON 的查询语言.
  • JSON Mask - 用于选择 JS 对象的特定部分,隐藏其余部分的微型语言和引擎. (JavaScript)
  • JSONiq - JSON 查询语言.
  • ObjectPath - 半结构化数据的敏捷查询语言. (Python)
  • DefiantJS - 使用 XPath 表达式进行闪电般快速的搜索,并使用 XSL 进行转换. (JavaScript)
  • JSONSelect - 类似 CSS 的选择器. (JavaScript)
  • JSONPath - XPath 实现. (Javascript/PHP)
  • searchjs - 一个基于 json SQL 类语言的过滤库.
  • json-rel - JSON 中的透明引用.
  • JSONata - Node-RED 中使用的查询和转换语言,支持函数表达式.

JSON Schema Frontend components

  • JSON Editor - 基于 JSON 模式的编辑器. (jQuery)
  • angular-schema-form - 生成表格. (角度)
  • JSON Schema View - 用于在 HTML 中呈现 JSON 模式的 AngularJS 指令 (AngularJS)
  • Angular JSON Schema Form - 用于从 JSON 模式制作表单的 Angular 指令. (角度)
  • AlpacaJS - 在 Bootstrap、jQuery Mobile、jQuery UI 和 HTML (jQuery) 之上生成 JSON Schema 驱动的表单

JSON Schema Tools

  • prmd - HTTP API 的工具和文档生成.
  • generate-schema - 毫不费力地将您的 JSON 对象转换为 JSON Schema、Mongoose Schema 或用于快速文档/新贵的通用模板.
  • Docson - 您的类型的文档.
  • Orderly JSON - 一种用于描述编译成 JSONSchema 的 JSON 的文本格式.
  • jsonschema2pojo - 生成 Java 类型并注释这些类型以与 Jackson 1.x 或 2.x、Gson 等进行数据绑定.
  • Matic - 用于生成 HTML 文档的构建工具.
  • JSON Schema + Faker - 伪造你的模式.
  • DLL.js - 从 PostgreSQL 或 SQLite3 获取 JSON 模式.
  • JSONSchema.net - 来自 JSON 对象的 JSON 模式生成器.
  • js-schema - 一种在 JavaScript 中描述对象模式的新方法. 它具有简洁明了的语法,并且能够序列化为流行的 JSON Schema 格式或从中序列化.
  • aptos - 一种使用 JSON Schema 验证数据并将 JSON Schema 文档转换为不同数据交换格式的工具.
  • JSON Schema $Ref Parser - 解析、解析和取消引用 JSON 模式 $ref 指针

JSON Schema Resources

JSON Schema Validators

Javascript 和 Node.js * json-schema-benchmark - Node.js 验证器的性能基准. * is-my-json-valid - 使用代码生成速度极快的验证器. * jsen - 为速度而构建的验证器. * themis - 一个超快的验证器. * jsck - JSON 模式编译检查. * z-schema - 为 NodeJS 和浏览器用 JavaScript 编写的验证器. * jjv - 用于架构验证的 Javascript 库. * request-validator - 用于快速和连接的灵活请求验证器中间件. * tv4 - 微型验证器. * ajv - 最快的验证器. 支持 v⅚ 提案.

Java 和 Kotlin * Medeia Validator - 兼容 (draft-04/06/07) 和用 Kotlin 编写的快速流式验证器

PHP * JSON Schema for PHP - JSON 模式的 PHP 实现. * JSON Guard - JSON Schema Draft 4 的验证器.

Python * jsonschema - jsonschema 的 Python 实现. * JSON Schema Toolkit - 通过验证、Django JSON 字段和本机 PostgreSQL JSON 类型约束以编程方式构建 JSON 模式(递归字段映射).

Ruby * Ruby JSON Schema Validator - 针对符合 JSON Schema Draft 4 的 JSON 模式进行验证.

Contribute

欢迎投稿! 阅读 contribution guidelines 第一的.

License

CC0