Monday, November 23, 2015

AwesomeJSON

Awesome JSON Awesome

A curated list of awesome JSON libraries and resources.
Inspired by the awesome list.

Applications

OS X
  • Visual JSON (github) - simple JSON pretty-viewer for Mac OS X.
  • JSONExport - convert a object to a class of one of the currently supported languages.

Binary Serialization

  • BSON - Binary JSON.
  • MessagePack - An extremely efficient object serialization library.
  • UBJSON - The universally compatible format specification for binary JSON.
  • CBOR - Concise Binary Object Representation.
  • Smile - A efficient binary data format.
  • PSON - Protocol JSON, super efficient binary serialization format.

Browser Extensions

Chrome
Firefox
Safari
  • JSONAce (github) - Formats & syntax highlights JSON viewed inside of the web browser using the ACE editor.
  • JSONView (github) - A port of the JSONView Firefox extension that formats and syntax highlights JSON viewed inside of the browser

Command-line tools

  • jq - A lightweight and flexible command-line JSON processor.
  • json - A "json" command for massaging JSON on your Unix command line.
  • jshon - A parser designed for maximum convenience within the shell.
  • jarg - Shorthand JSON and form encoding syntax in the shell.
  • jsawk - Like awk, but for JSON.

Databases

  • MongoDB - an open-source document database, and the leading NoSQL database.
  • RethinkDB - An open-source distributed document database with a pleasant and powerful query language.
  • EJDB - Embedded JSON Database engine. (C)
  • lowdb - Flat file database built on lodash API. (Javascript)
  • Lawnchair - A lightweight clientside document store. (Javascript)
  • JSON ODM - Object document mapper for JavaScript to use on the server or in the browser. (Javascript)
  • JSON Server - Get a full fake REST API with zero coding in less than 30 seconds.

Datasets

  • countries - World countries.
  • vat-rates - VAT rates for all EU countries.
  • gods - 5000 gods from all around the world, from all eras.
  • MTG JSON - Up to date Magic the Gathering card data.
  • Heartstone JSON - Up to date Hearthstone card data.

Data modeling

  • JSONModel - Magical Data Modelling Framework. (Objective-C)

Data generation

  • jsonymize - Reads data from standard input, anonymizes, then writes to standard output.
  • dyson - Server for dynamic, fake JSON. (node.js)

Differencing

  • JSONPatch - A format for describing changes to a document.
  • JSON-Patch - Lean and mean Javascript implementation of the JSON-Patch standard (RFC 6902). (Javascript)
  • jiff - JSON Patch and diff based on rfc6902. (Javascript)
  • json-patch-php - implementation of JSON-patch (IETF RFC 6902) (PHP)
  • dffptch - A micro library for diffing and patching using a compact diff format. (Javascript)
  • jsondiffpatch - Diff & patch for JavaScript objects. (Javascript)

Editors

  • JSONEdit - User friendly, visual editor built as an AngularJS directive.

Format Extensions

  • GeoJSON - A geospatial data interchange format.
  • JSON-LD - A lightweight Linked Data format.
  • JSON-RPC - A stateless, light-weight remote procedure call (RPC) protocol.
  • JSONP - Safer cross-domain Ajax with JSON-P/JSONP.
  • JsonML - A compact format for transporting XML-based markup as JSON which allows it to be losslessly converted back to its original form.
  • JSON5 - a extension that aims to make it easier for humans to write and maintain by hand.
  • JSON Resume - The open source initiative to create standard for resumes.
  • JSON Web Tokens - A compact URL-safe means of representing claims to be transferred between two parties.
  • JSON API - A standard for building APIs.
  • Collection+JSON - A read/write hypermedia-type designed to support management and querying of simple collections.
  • hal-json - A set of conventions for expressing hyperlinks in either JSON or XML.
  • JSON Activity Streams - A format for syndicating social activities around the web.
  • JSON-stat - Simple lightweight format for data dissemination.
  • /contribute.json - Making open source contribution information easier to access, across projects.
  • JSON Table Schema - a simple schema for tabular data
  • NDJSON (Newline delimited JSON) - a standard for delimiting JSON in stream protocols.

Frontend components

  • JSON editor jQuery plugin - component for you web apps/pages. (jQuery)
  • jqTree - Widget for displaying a tree structure in html. (jQuery)
  • jsTree - jquery plugin, that provides interactive trees. (jQuery)
  • Dynatable.js - A funner, semantic, HTML5+JSON, interactive table plugin. (jQuery)
  • JSON Formatter - Angular directive for collapsible JSON in HTML. (AngularJS)

Libraries

C
  • Jansson - A C library for encoding, decoding and manipulating data.
  • jsmn - A minimalistic parser in C. It can be easily integrated into the resource-limited projects or embedded systems.
C++
  • ArduinoJson - An efficient library for embedded systems.
  • JSON++ - A self contained Flex/Bison parser for C++11.
  • json11 - A tiny library for C++11.
Clojure
  • data.json - parser/generator to/from Clojure data structures.
Java
  • JSON-java - A reference implementation.
  • Fast JSON Processor
  • Gson - A Java library to convert JSON to Java objects and vice-versa.
  • Jackson - A multi-purpose Java library for processing JSON data format.
  • moshi - A modern JSON library for Android and Java.
Javascript
  • JSON-js - JSON in JavaScript.
  • JSON 3 - A modern implementation.
  • oboe.js - A streaming approach, speeds up web applications by providing parsed objects before the response completes.
Objective-C
  • JSONKit - Objective-C library.
  • SBJson - Parse one or more chunks of data.
PHP
  • Webmozart JSON - A robust decoder/encoder with support for schema validation.
Python
  • simplejson - A simple, fast, extensible encoder/decoder
  • jsonpickle - Library for serializing any arbitrary object graph.
Ruby
  • oj - A fast JSON parser and Object marshaller as a Ruby gem.
.NET
  • jsonfx - serialization framework for .NET.
Scala
  • spray-json - A lightweight, clean and simple implementation in Scala.
Swift
  • SwiftyJSON - The better way to deal with data in Swift.

Linters

  • jsonlint - Parser and validator with a CLI. (Javascript)
  • JSON Lint - PHP linter. (PHP)

Online tools

Schema Specifications

  • JSON Schema - a JSON based format for defining the structure of JSON data.
  • Itemscript - Language for validating and specifying values.
  • Kwalify - A parser, schema validator, and data binding tool
  • Rx - Simple, Extensible Schemata.

Services

  • JSONProxy - Simple HTTP proxy that enables cross-domain requests to any JSON API.
  • Myjson - A simple store for your web or mobile app.
  • Telize - JSON IP and GeoIP REST API.
  • jsonpad - a simple JSON storage platform.
  • JSONP Proxy - A REST API allowing to get JSONP from any API.

Supersets

  • YAML - A human friendly data serialization standard for all programming languages.
  • HanSON - JSON for Humans - with unquoted identifiers, multi-line strings and comments.
  • ╬╝son (uson) - a shorthand for JSON.
  • HOCON - Human-Optimized Config Object Notation.
  • ASON - A semantically complete superset of JSON (draft).

References

Related formats

  • AXON - A simple text based format for interchanging of objects, documents and data. It tries to combine the best of JSON, XML and YAML.
  • CSON - CoffeeScript-Object-Notation. JSON for CoffeeScript objects.
  • MSON - Markdown syntax compatible with describing JSON and JSON Schema.
  • ArchieML - Structured text format optimized for human writability.

Templates

  • Jsonnet - A domain specific configuration language that helps you define JSON data.
  • rabl - General ruby templating with json, bson, xml, plist and msgpack support. (Ruby)
  • json2html - HTML templating library with wrappers for both jQuery and Node.js. (Javascript)

Testing

  • JSON Test - Testing platform for services utilizing JavaScript Object Notation (JSON).
  • JSONassert - Write JSON unit tests in less code. Great for testing REST interfaces. (Java)
  • JsonUnit - A library that simplifies JSON comparison in unit tests. It's strongly inspired by XmlUnit.

Text Editor Plugins

Emacs
Vim
  • vim-json - A better JSON for Vim: distinct highlighting of keywords vs values, JSON-specific (non-JS) warnings, quote concealing. Pathogen-friendly.

Transformations

  • json2json - Transform (reformat) structures from one to another. (Javascript)
  • trans - The ultimate object transformer. (Javascript)
  • osmtogeojson - Converts OSM data to GeoJSON. (Javascript)
  • x2js - XML to JSON and vice versa javascript conversion functions. (Javascript)
  • JSONC - JSON compressor and decompressor. (Javascript)
  • JsonMapper - Map nested structures onto PHP classes (PHP)
  • SassyJSON - Sass-powered API. (Sass)
  • 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.
  • JSONtoFoundation - OS X utility that converts a JSON object to a Foundation object that can be used in Cocoa/Cocoa Touch development. (Swift)
  • fanci - Extract, rename and transform JSON based on a template. (node.js)
  • Pinch - String.replace for JavaScript objects. (Javascript)
  • deepjson - A better way to load big json config files. (node.js)
  • jsontl - allow transformation using a JSON-based transformation language. (node.js)

Queries

  • JMESPath - A query language for JSON.
  • JSON Mask - Tiny language and engine for selecting specific parts of a JS object, hiding the rest. (Javascript)
  • JSONiq - The JSON Query Language.
  • ObjectPath - The agile query language for semi-structured data. (Python)
  • DefiantJS - Lightning-fast searches using XPath expressions, and transform using XSL. (Javascript)
  • JSONSelect - CSS-like selectors. (Javascript)
  • JSONPath - XPath implementation. (Javascript/PHP)
  • searchjs - A library for filtering based on a json SQL-like language.

JSON Schema Frontend components

JSON Schema Tools

  • prmd - Tools and doc generation for HTTP APIs.
  • generate-schema - Effortlessly convert your JSON Object to JSON Schema, Mongoose Schema, or a Generic template for quick documentation / upstart.
  • Docson - Documentation for your types.
  • Orderly JSON - A textual format for describing JSON compiled into JSONSchema.
  • jsonschema2pojo - Generates Java types and annotates those types for data-binding with Jackson 1.x or 2.x, Gson, etc.
  • Matic - Build tool for generating HTML documentation.
  • JSON Schema + Faker - Fake your schemas.
  • DLL.js - Gets you a JSON Schema from PostgreSQL or SQLite3.

JSON Schema Resources

JSON Schema Validators

Javascript and Node.js
  • json-schema-benchmark - Performance benchmark for Node.js validators.
  • is-my-json-valid - A validator that uses code generation to be extremely fast.
  • jsen - A validator built for speed.
  • themis - A blazing fast validator.
  • jsck - JSON Schema Compiled checK.
  • z-schema - validator written in JavaScript for NodeJS and Browsers.
  • jjv - Javascript Library for Schema Validation.
  • request-validator - Flexible request validator middleware for express and connect.
  • tv4 - Tiny Validator.
PHP
Python
  • JSON Schema Toolkit - Programmatic building of JSON schemas (recursive field mappings) with validation, a Django JSON Field, and native PostgreSQL JSON type constraints.
Ruby

REFERENCE: https://github.com/burningtree/awesome-json

No comments:

HTMLCode

HTMLCode Content