diff --git a/data/hyper-libraries-obsolete.yml b/data/hyper-libraries-obsolete.yml deleted file mode 100644 index 10a55c4a8..000000000 --- a/data/hyper-libraries-obsolete.yml +++ /dev/null @@ -1,15 +0,0 @@ -- name: JavaScript - implementations: - - name: Jsonary - url: "http://jsonary.com/" - license: MIT - date-draft: [] - draft: [4] -- name: Python - implementations: - - name: Core API Hyper-Schema codec - url: "https://github.com/core-api/python-jsonhyperschema-codec" - notes: "Draft-06+ progress: issue [12](https://github.com/core-api/python-jsonhyperschema-codec/issues/12)" - date-draft: [] - draft: [4] - license: BSD-2-Clause diff --git a/data/tooling-data.schema.json b/data/tooling-data.schema.json index b91ae2365..75d0d435c 100644 --- a/data/tooling-data.schema.json +++ b/data/tooling-data.schema.json @@ -121,7 +121,7 @@ "C#", "Go", "C++", - "JavaScript", + "JavaScript", "Julia" ] ] @@ -280,6 +280,11 @@ "description": "The date when the tool was most recently updated. The date should be in the format YYYY-MM-DD, representing the year, month, and day of the update.", "type": "string", "format": "date" + }, + "status": { + "description": "Current status of the project, indicating its phase of development or maintenance.", + "type": "string", + "enum": ["active", "obsolete"] } }, "required": ["name", "toolingTypes"], diff --git a/data/tooling-data.yaml b/data/tooling-data.yaml index 46c551e64..17449638b 100644 --- a/data/tooling-data.yaml +++ b/data/tooling-data.yaml @@ -1106,6 +1106,7 @@ supportedDialects: draft: ['4', '6', '7'] lastUpdated: '2020-11-30' + status: 'obsolete' - name: php-json-schema-bench description: 'Comparative benchmark for JSON-schema PHP validators using JSON-Schema Test Suite and z-schema/JSCK.' @@ -2435,3 +2436,601 @@ supportedDialects: draft: ['7'] lastUpdated: '2024-10-24' + +- name: Jsonary + description: 'Quickly assemble clients for JSON-based APIs (powered by JSON Schema)' + toolingTypes: ['hyper-schema'] + languages: ['Javascript'] + license: 'MIT' + source: 'https://github.com/jsonary-js/jsonary' + supportedDialects: + draft: ['4'] + status: 'obsolete' + lastUpdated: '2015-05-08' + +- name: Core API Hyper-Schema codec + description: 'A JSON Hyperschema codec for Core API.' + toolingTypes: ['hyper-schema'] + languages: ['Python'] + maintainers: + - name: 'Tom Christie' + username: 'tomchristie' + platform: 'github' + license: 'BSD-2-Clause' + source: 'https://github.com/core-api/python-jsonhyperschema-codec' + supportedDialects: + draft: ['4'] + status: 'obsolete' + lastUpdated: '2018-02-27' + +- name: NJsonSchema + description: 'JSON Schema reader, generator and validator for .NET' + toolingTypes: [validator] + languages: ['.NET'] + license: 'Ms-PL' + source: http://NJsonSchema.org + supportedDialects: + draft: ['4'] + status: 'obsolete' + +- name: Manatee.Json + toolingTypes: ['validator'] + languages: ['.NET'] + license: MIT + source: https://github.com/gregsdennis/Manatee.Json + supportedDialects: + draft: ['4', '6', '7'] + status: 'obsolete' + +- name: WJElement + toolingTypes: ['validator'] + languages: ['C'] + license: 'AGPL-3.0' + source: https://github.com/netmail-open/wjelement + supportedDialects: + draft: ['3', '4'] + toolingListingNotes: 'Draft-06+ progress: issue 17' + status: 'obsolete' + +- name: wjelement-cpp + toolingTypes: ['validator'] + languages: ['C++'] + license: 'AGPL-3.0' + source: https://github.com/petehug/wjelement-cpp + supportedDialects: + draft: ['4'] + status: 'obsolete' + +- name: Header-only C++ library for JSON Schema validation + toolingTypes: ['validator'] + languages: ['C++'] + license: BSD-2-Clause + source: https://github.com/tristanpenman/valijson + supportedDialects: + draft: ['3', '4'] + status: 'obsolete' + +- name: Modern C++ JSON schema validator + toolingTypes: ['validator'] + languages: ['C++'] + license: MIT + source: https://github.com/pboettch/json-schema-validator + supportedDialects: + draft: ['4'] + toolingListingNotes: 'based on JSON for Modern C++' + status: 'obsolete' + +- name: scjsv + toolingTypes: ['validator'] + languages: ['Clojure'] + license: 'EPL-1.0' + source: https://github.com/metosin/scjsv + supportedDialects: + draft: ['4'] + toolingListingNotes: '(wrapper for java-json-tools/json-schema-validator)' + status: 'obsolete' + +- name: json-schema validator + toolingTypes: ['validator'] + languages: ['Clojure'] + license: MIT + source: https://github.com/tatut/json-schema + supportedDialects: + draft: ['3', '4'] + status: 'obsolete' + +- name: JSCK + toolingTypes: ['validator'] + languages: ['CoffeeScript'] + license: MIT + source: https://github.com/pandastrike/jsck + supportedDialects: + draft: ['3', '4'] + status: 'obsolete' + +- name: json_schema + toolingTypes: ['validator'] + languages: ['Dart'] + license: 'BSL-1.0' + source: https://github.com/patefacio/json_schema + supportedDialects: + draft: ['4'] + status: 'obsolete' + +- name: Elixir JSON Schema validator + toolingTypes: ['validator'] + languages: ['Elixir'] + license: MIT + source: https://github.com/jonasschmidt/ex_json_schema + supportedDialects: + draft: ['4'] + toolingListingNotes: 'Draft-06+ progress: issue 24; branch multi-draft-support' + status: 'obsolete' + +- name: validate-json + toolingTypes: ['validator'] + languages: ['Go'] + license: GPL-2.0 + source: https://github.com/cesanta/validate-json + supportedDialects: + draft: ['4'] + status: 'obsolete' + +- name: hjsonschema + toolingTypes: ['validator'] + languages: ['Haskell'] + license: MIT + source: https://github.com/seagreen/hjsonschema + supportedDialects: + draft: ['4'] + status: 'obsolete' + +- name: json-schema-validator + toolingTypes: ['validator'] + languages: ['Java'] + license: 'LGPL-3.0' + source: https://github.com/java-json-tools/json-schema-validator + supportedDialects: + draft: ['4'] + status: 'obsolete' + +- name: jsonschema + toolingTypes: ['validator'] + languages: ['JavaScript'] + license: MIT + source: https://github.com/tdegrunt/jsonschema + supportedDialects: + draft: ['4'] + toolingListingNotes: 'for Node.js' + status: 'obsolete' + +- name: tv4 + toolingTypes: ['validator'] + languages: ['JavaScript'] + license: 'MIT' + source: http://geraintluff.github.com/tv4/ + supportedDialects: + draft: ['4'] + status: 'obsolete' + +- name: is-my-json-valid + toolingTypes: ['validator'] + languages: ['JavaScript'] + license: 'MIT' + source: https://github.com/mafintosh/is-my-json-valid + supportedDialects: + draft: ['4'] + status: 'obsolete' + +- name: JaySchema + toolingTypes: ['validator'] + languages: ['JavaScript'] + license: 'BSD-3-Clause' + source: https://github.com/natesilva/jayschema + supportedDialects: + draft: ['4'] + toolingListingNotes: 'for Node.js' + status: 'obsolete' + +- name: z-schema + toolingTypes: ['validator'] + languages: ['JavaScript'] + license: 'MIT' + source: https://github.com/zaggino/z-schema + supportedDialects: + draft: ['4'] + toolingListingNotes: 'for Node.js' + status: 'obsolete' + +- name: direct-schema + toolingTypes: ['validator'] + languages: ['JavaScript'] + license: 'BSD-3-Clause' + source: http://github.com/IreneKnapp/direct-schema + supportedDialects: + draft: ['3'] + status: 'obsolete' + +- name: JSV + toolingTypes: ['validator'] + languages: ['JavaScript'] + license: 'BSD-3-Clause' + source: http://github.com/garycourt/JSV + supportedDialects: + draft: ['1', '2', '3'] + status: 'obsolete' + +- name: json-schema + toolingTypes: ['validator'] + languages: ['JavaScript'] + license: 'BSD-3-Clause' + source: https://github.com/kriszyp/json-schema + supportedDialects: + draft: ['4'] + toolingListingNotes: 'part of the [Persevere](http://github.com/kriszyp/json-schema) project' + status: 'obsolete' + +- name: schema.js + toolingTypes: ['validator'] + languages: ['JavaScript'] + license: 'MIT' + source: https://github.com/akidee/schema.js + supportedDialects: + draft: ['2'] + status: 'obsolete' + +- name: json-gate + toolingTypes: ['validator'] + languages: ['JavaScript'] + license: 'MIT' + source: https://github.com/oferei/json-gate + supportedDialects: + draft: ['3'] + status: 'obsolete' + +- name: JSEN + toolingTypes: ['validator'] + languages: ['JavaScript'] + license: 'MIT' + source: https://github.com/bugventure/jsen + supportedDialects: + draft: ['3'] + toolingListingNotes: 'for Node.js' + status: 'obsolete' + +- name: Skeemas + toolingTypes: ['validator'] + languages: ['JavaScript'] + license: 'MIT' + source: https://github.com/ericgj/json-schema-valid + supportedDialects: + draft: ['3', '4'] + status: 'obsolete' + +- name: Jassi + toolingTypes: ['validator'] + languages: ['JavaScript'] + license: 'GPL-3.0' + source: https://github.com/iclanzan/jassi + supportedDialects: + draft: ['4'] + status: 'obsolete' + +- name: json-schema-valid + toolingTypes: ['validator'] + languages: ['JavaScript'] + license: 'MIT' + source: https://github.com/ericgj/json-schema-valid + supportedDialects: + draft: ['4'] + status: 'obsolete' + +- name: jsv4-php + toolingTypes: ['validator'] + languages: ['PHP'] + license: 'MIT' + source: https://github.com/geraintluff/jsv4-php + supportedDialects: + draft: ['4'] + status: 'obsolete' + +- name: JVal + toolingTypes: ['validator'] + languages: ['PHP'] + license: 'MIT' + source: https://github.com/stefk/jval + supportedDialects: + draft: ['4'] + status: 'obsolete' + +- name: JSON Guard + toolingTypes: ['validator'] + languages: ['PHP'] + license: 'MIT' + source: https://github.com/thephpleague/json-guard + supportedDialects: + draft: ['4'] + status: 'obsolete' + +- name: JSV::Validator + toolingTypes: ['validator'] + languages: ['Perl'] + license: MIT + source: https://metacpan.org/module/JSV::Validator + supportedDialects: + draft: ['4'] + status: 'obsolete' + +- name: postgres-json-schema + toolingTypes: ['validator'] + languages: ['PostgreSQL'] + license: 'PostgreSQL' + source: https://github.com/gavinwahl/postgres-json-schema + supportedDialects: + draft: ['4'] + toolingListingNotes: 'PL/pgSQL implementation, no remote (http) references' + status: 'obsolete' + +- name: json_schema + toolingTypes: ['validator'] + languages: ['Ruby'] + license: MIT + source: https://github.com/brandur/json_schema + supportedDialects: + draft: ['4'] + toolingListingNotes: 'Schema parser and validator, with hyper-schema support' + status: 'obsolete' + +- name: json-schema + toolingTypes: ['validator'] + languages: ['Ruby'] + license: MIT + source: https://github.com/hoxworth/json-schema + supportedDialects: + draft: ['1', '2', '3', '4'] + status: 'obsolete' + +- name: valico + toolingTypes: ['validator'] + languages: ['Rust'] + license: MIT + source: https://github.com/rustless/valico + supportedDialects: + draft: ['4'] + status: 'obsolete' + +- name: json-schema-parser + toolingTypes: ['validator'] + languages: ['Scala'] + license: Apache-2.0 + source: https://github.com/VoxSupplyChain/json-schema-parser + supportedDialects: + draft: ['4'] + toolingListingNotes: 'Schema parser and validator' + status: 'obsolete' + +- name: JSONSchema + toolingTypes: ['validator'] + languages: ['Swift'] + license: BSD-3-Clause + source: https://github.com/kylef/JSONSchema.swift + supportedDialects: + draft: ['4'] + status: 'obsolete' + +- name: 'JSL' + description: 'a Python DSL for defining JSON Schemas' + toolingTypes: [code-to-schema] + languages: ['Python'] + license: 'BSD-3-Clause' + source: 'https://github.com/aromanovich/jsl' + status: 'obsolete' + +- name: 'json-schema-generator' + description: 'Node.js library usable both as a CLI util and as a Node module' + toolingTypes: [code-to-schema] + languages: ['JavaScript'] + license: 'MIT' + source: 'https://github.com/krg7880/json-schema-generator' + status: 'obsolete' + +- name: 'Typson' + toolingTypes: ['code-to-schema'] + languages: ['TypeScript'] + source: 'https://github.com/lbovet/typson' + license: 'Apache-2.0' + status: 'obsolete' + +- name: 'JSON Schema Generator' + description: 'Free extension' + toolingTypes: ['code-to-schema', 'editor-plugins'] + homepage: 'https://visualstudiogallery.msdn.microsoft.com/b4515ef8-a518-41ca-b48c-bb1fd4e6faf7' + status: 'obsolete' + +- name: 'API-Add-In' + description: 'Sparx EA extension for exporting JSON Schema from UML models' + toolingTypes: ['code-to-schema'] + source: 'https://github.com/bayeslife/api-add-in' + status: 'obsolete' + +- name: 'json-schema-generator' + description: 'JSON-Schema + fake data generators' + toolingTypes: ['schema-to-data'] + languages: ['JavaScript'] + source: 'https://github.com/json-schema-faker' + license: 'MIT' + status: 'obsolete' + +- name: 'DJsonSchema' + description: 'JSON Schema reader and code generator for Delphi' + toolingTypes: ['schema-to-code'] + languages: ['Delphi'] + source: 'https://github.com/schlothauer-wauer/DJsonSchema' + license: 'MIT' + status: 'obsolete' + +- name: 'aeson-schema' + description: 'Generates code for a parser' + toolingTypes: ['schema-to-code'] + languages: ['Haskell'] + source: 'https://github.com/Fuuzetsu/aeson-schema' + license: 'MIT' + status: 'obsolete' + +- name: 'autoparse' + toolingTypes: ['schema-to-code'] + languages: ['Ruby'] + source: 'https://github.com/google/autoparse' + license: 'Apache-2.0' + status: 'obsolete' + +- name: 'json-schema-codegen' + description: 'Tool and SBT plugin for generating Scala, TypeScript models and parsers from JSON-Schema definitions, supports draft 4' + toolingTypes: ['schema-to-code'] + languages: ['Scala'] + source: 'https://github.com/VoxSupplyChain/json-schema-codegen' + license: 'Apache-2.0' + status: 'obsolete' + +- name: 'Argus' + description: 'Macros for building models from JSON Schemas' + toolingTypes: ['schema-to-code'] + languages: ['Scala'] + source: 'https://github.com/aishfenton/argus' + license: 'MIT' + status: 'obsolete' + +- name: 'Bric-à-brac' + description: 'Generates idiomatic swift structs and parser/serializer from JSON schemas' + toolingTypes: ['schema-to-code'] + languages: ['Swift'] + source: 'https://github.com/glimpseio/BricBrac' + license: 'MIT' + status: 'obsolete' + +- name: 'gojsonschema' + description: 'Golang package for generating Golang structs, support for Draft 4. [Demo](http://json.golang.chinazt.cc)' + toolingTypes: ['schema-to-code'] + languages: ['Go'] + source: 'https://github.com/andy-zhangtao/gojsonschema' + homepage: 'http://json.golang.chinazt.cc' + license: 'Apache-2.0' + status: 'obsolete' + +- name: 'JSON Editor' + toolingTypes: ['schema-to-web-UI'] + languages: ['JavaScript'] + source: 'https://github.com/jdorn/json-editor' + license: 'MIT' + status: 'obsolete' + +- name: 'JSONForms' + description: 'Developed by EclipseSource' + toolingTypes: ['schema-to-web-UI'] + languages: ['JavaScript'] + homepage: 'https://jsonforms.io' + license: 'MIT' + status: 'obsolete' + +- name: 'Jsonary' + toolingTypes: ['schema-to-web-UI'] + languages: ['JavaScript'] + homepage: 'https://jsonary.com/' + license: 'MIT' + status: 'obsolete' + +- name: 'Metawidget' + toolingTypes: ['schema-to-web-UI'] + languages: ['JavaScript'] + homepage: 'https://metawidget.org/' + license: 'LGPL-2.1' + status: 'obsolete' + +- name: 'pure-form webcomponent' + toolingTypes: ['schema-to-web-UI'] + languages: ['JavaScript'] + source: 'https://github.com/john-doherty/pure-form' + license: 'MIT' + status: 'obsolete' + +- name: 'Liquid XML Studio 2016' + description: 'Graphical JSON schema editor for draft 4, context-sensitive IntelliSense for JSON documents' + toolingTypes: ['editor'] + homepage: 'https://www.liquid-technologies.com/json-schema-editor' + status: 'obsolete' + +- name: 'ReSharper 2016.1' + description: 'Code completion, inspections, and quick fixes for JSON schema in Visual Studio 2010 - 2015, including support for JSON Path and regular expressions for schema editing. Supports draft-4' + toolingTypes: ['editor'] + homepage: 'https://www.jetbrains.com/resharper/' + status: 'obsolete' + +- name: 'Visual Studio 2013' + description: 'Auto-completion and tooltips based on JSON schema draft 3 and draft 4' + toolingTypes: ['editor'] + homepage: 'http://www.visualstudio.com/' + status: 'obsolete' + +- name: 'JSON Schema Editor' + description: 'An intuitive editor for JSON schema online' + toolingTypes: ['editor'] + homepage: 'https://json-schema-editor.tangramjs.com' + status: 'obsolete' + +- name: 'JSON Editor (Tangram)' + description: 'An online, schema-aware editor for JSON document' + toolingTypes: ['editor'] + homepage: 'https://json-editor.tangramjs.com' + status: 'obsolete' + +- name: 'JSON Schema Compatibility' + description: 'Converts draft 3 to draft 4' + toolingTypes: ['util-draft-migration'] + languages: ['JavaScript'] + source: 'https://github.com/geraintluff/json-schema-compatability' + license: 'CC0-1.0' + status: 'obsolete' + +- name: 'Matic' + toolingTypes: ['documentation'] + languages: ['JavaScript'] + source: 'https://github.com/mattyod/matic' + license: 'MIT' + status: 'obsolete' + +- name: 'Docson' + toolingTypes: ['documentation'] + languages: ['JavaScript'] + source: 'https://github.com/lbovet/docson' + license: 'Apache-2.0' + status: 'obsolete' + +- name: 'doca' + description: 'See @cloudflare/doca for draft-06+ support' + toolingTypes: ['documentation'] + languages: ['JavaScript'] + source: 'https://github.com/cloudflare/doca/' + license: 'BSD-2-Clause' + status: 'obsolete' + +- name: 'prmd' + toolingTypes: ['documentation'] + languages: ['JavaScript'] + source: 'https://github.com/interagent/prmd' + license: 'MIT' + status: 'obsolete' + +- name: 'Dojo' + description: 'Supports some aspects of JSON Schema' + toolingTypes: ['util-general-processing'] + languages: ['JavaScript'] + homepage: 'https://www.dojotoolkit.org/' + license: 'AFL-2.1 OR BSD-3-Clause' + status: 'obsolete' + +- name: 'JSON Schema Random' + toolingTypes: ['schema-to-data'] + languages: ['JavaScript'] + source: 'https://github.com/andreineculau/json-schema-random' + license: 'Apache-2.0' + status: 'obsolete' diff --git a/data/validator-libraries-obsolete.yml b/data/validator-libraries-obsolete.yml deleted file mode 100644 index 127fb16e6..000000000 --- a/data/validator-libraries-obsolete.yml +++ /dev/null @@ -1,250 +0,0 @@ -- name: .NET - anchor-name: dotnet - implementations: - - name: NJsonSchema - url: http://NJsonSchema.org - date-draft: [] - draft: [4] - license: Ms-PL - - name: Manatee.Json - url: https://github.com/gregsdennis/Manatee.Json - date-draft: [2019-09] - draft: [7, 6, 4] - license: MIT -- name: C - implementations: - - name: WJElement - url: https://github.com/netmail-open/wjelement - date-draft: [] - draft: [4, 3] - license: LGPL-3.0 - notes: "Draft-06+ progress: issue [17](https://github.com/netmail-open/wjelement/issues/17#issuecomment-390899432)" -- name: C++ - anchor-name: cpp - implementations: - - name: wjelement-cpp - url: https://github.com/petehug/wjelement-cpp - date-draft: [] - draft: [4] - license: LGPLv3 - - name: Header-only C++ library for JSON Schema validation - url: https://github.com/tristanpenman/valijson - date-draft: [] - draft: [4, 3] - license: BSD-2-Clause - - name: Modern C++ JSON schema validator - url: https://github.com/pboettch/json-schema-validator - notes: "based on JSON for Modern C++" - date-draft: [] - draft: [4] - license: "MIT" -- name: Clojure - implementations: - - name: scjsv - url: https://github.com/metosin/scjsv - notes: "(wrapper for [java-json-tools/json-schema-validator](https://github.com/java-json-tools/json-schema-validator))" - date-draft: [] - draft: [4] - license: Eclipse Public License v1.0 - - name: json-schema validator - url: https://github.com/tatut/json-schema - date-draft: [] - draft: [3, 4] - license: MIT -- name: CoffeeScript - implementations: - - name: JSCK - url: https://github.com/pandastrike/jsck - date-draft: [] - draft: [4, 3] - license: MIT -- name: Dart - implementations: - - name: json_schema - url: https://github.com/patefacio/json_schema - date-draft: [] - draft: [4] - license: BSL-1.0 -- name: Elixir - implementations: - - name: Elixir JSON Schema validator - url: https://github.com/jonasschmidt/ex_json_schema - date-draft: [] - draft: [4] - notes: "Draft-06+ progress: issue [24](https://github.com/jonasschmidt/ex_json_schema/issues/24); branch [multi-draft-support](https://github.com/jonasschmidt/ex_json_schema/tree/multi-draft-support)" - license: MIT -- name: Go - implementations: - - name: validate-json - url: https://github.com/cesanta/validate-json - date-draft: [] - draft: [4] - license: GPLv2 -- name: Haskell - implementations: - - name: hjsonschema - url: https://github.com/seagreen/hjsonschema - date-draft: [] - draft: [4] - license: MIT -- name: Java - implementations: - - name: json-schema-validator - url: https://github.com/java-json-tools/json-schema-validator - date-draft: [] - draft: [4] - license: LGPLv3 -- name: JavaScript - implementations: - - name: jsonschema - url: https://github.com/tdegrunt/jsonschema - notes: "for Node.js" - date-draft: [] - draft: [4] - license: MIT - - name: tv4 - url: http://geraintluff.github.com/tv4/ - date-draft: [] - draft: [4] - license: Public Domain, MIT - - name: is-my-json-valid - url: https://github.com/mafintosh/is-my-json-valid - date-draft: [] - draft: [4] - license: MIT - - name: JaySchema - url: https://github.com/natesilva/jayschema - notes: "for Node.js" - date-draft: [] - draft: [4] - license: BSD - - name: z-schema - url: https://github.com/zaggino/z-schema - notes: "for Node.js" - date-draft: [] - draft: [4] - license: MIT - - name: direct-schema - url: http://github.com/IreneKnapp/direct-schema - date-draft: [] - draft: [3] - license: "BSD" - - name: JSV - url: http://github.com/garycourt/JSV - date-draft: [] - draft: [1, 2, 3] - license: "BSD" - - name: json-schema - url: https://github.com/kriszyp/json-schema - date-draft: [] - draft: [4] - notes: "part of the [Persevere](http://github.com/kriszyp/json-schema) project" - license: AFL, BSD - - name: schema.js - url: https://github.com/akidee/schema.js - date-draft: [] - draft: [2] - license: "MIT" - - name: json-gate - url: https://github.com/oferei/json-gate - date-draft: [] - draft: [3] - license: "MIT" - - name: JSEN - url: https://github.com/bugventure/jsen - notes: "for Node.js" - date-draft: [] - draft: [4] - license: "MIT" - - name: Skeemas - url: https://github.com/ericgj/json-schema-valid - date-draft: [] - draft: [3, 4] - license: MIT - - name: Jassi - url: https://github.com/iclanzan/jassi - date-draft: [] - draft: [4] - license: GPLv3 - - name: json-schema-valid - url: https://github.com/ericgj/json-schema-valid - date-draft: [] - draft: [4] - license: MIT -- name: PHP - implementations: - - name: json-schema - url: https://github.com/justinrainbow/json-schema - date-draft: [] - draft: [4, 3] - license: "Berkeley" - - name: jsv4-php - url: https://github.com/geraintluff/jsv4-php - date-draft: [] - draft: [4] - license: Public Domain, MIT - - name: JVal - url: https://github.com/stefk/jval - date-draft: [] - draft: [4] - license: "MIT" - - name: JSON Guard - url: https://github.com/thephpleague/json-guard - date-draft: [] - draft: [4] - license: "MIT" - - name: Swaggest Json Schema - url: https://github.com/swaggest/php-json-schema - date-draft: [] - draft: [4] - license: "MIT" -- name: Perl - implementations: - - name: JSV::Validator - url: https://metacpan.org/module/JSV::Validator - date-draft: [] - draft: [4] - license: "MIT" -- name: PostgreSQL - implementations: - - name: postgres-json-schema - url: https://github.com/gavinwahl/postgres-json-schema - notes: "PL/pgSQL implementation, no remote (http) references" - date-draft: [] - draft: [4] - license: PostgreSQL -- name: Ruby - implementations: - - name: json_schema - url: https://github.com/brandur/json_schema - notes: "Schema parser and validator, with hyper-schema support" - date-draft: [] - draft: [4] - license: MIT - - name: json-schema - url: https://github.com/hoxworth/json-schema - date-draft: [] - draft: [4, 3, 2, 1] - license: MIT -- name: Rust - implementations: - - name: valico - url: https://github.com/rustless/valico - date-draft: [] - draft: [4] - license: MIT -- name: Scala - implementations: - - name: json-schema-parser - url: https://github.com/VoxSupplyChain/json-schema-parser - notes: "Schema parser and validator" - date-draft: [] - draft: [4] - license: Apache 2.0 -- name: Swift - implementations: - - name: JSONSchema - url: https://github.com/kylef/JSONSchema.swift - date-draft: [] - draft: [4] - license: BSD-3-Clause diff --git a/pages/obsolete-implementations/index.page.tsx b/pages/obsolete-implementations/index.page.tsx deleted file mode 100644 index f63b7a20f..000000000 --- a/pages/obsolete-implementations/index.page.tsx +++ /dev/null @@ -1,217 +0,0 @@ -import React from 'react'; -import { getLayout } from '~/components/SiteLayout'; -import fs from 'fs'; -import matter from 'gray-matter'; -import StyledMarkdown from '~/components/StyledMarkdown'; -import yaml from 'js-yaml'; -import { Headline1, Headline2, Headline3 } from 'components/Headlines'; -import slugify from 'slugify'; -import { useRouter } from 'next/router'; -import classnames from 'classnames'; -import { SectionContext } from '~/context'; -import { DRAFT_ORDER } from '~/lib/config'; - -// @ts-ignore -import zeroFill from 'zero-fill'; - -export async function getStaticProps() { - const validators = yaml.load( - fs.readFileSync('data/validator-libraries-obsolete.yml', 'utf-8'), - ); - const hyperLibaries = yaml.load( - fs.readFileSync('data/hyper-libraries-obsolete.yml', 'utf-8'), - ); - - const intro = fs.readFileSync( - 'pages/obsolete-implementations/intro.md', - 'utf-8', - ); - const main = fs.readFileSync( - 'pages/obsolete-implementations/main.md', - 'utf-8', - ); - const main2 = fs.readFileSync( - 'pages/obsolete-implementations/main2.md', - 'utf-8', - ); - const { content: introContent } = matter(intro); - const { content: mainContent } = matter(main); - const { content: main2Content } = matter(main2); - return { - props: { - blocks: { - intro: introContent, - main: mainContent, - main2: main2Content, - }, - validators, - hyperLibaries, - }, - }; -} - -type ImplementationByLanguage = { name: string }; - -export default function ImplementationsPages({ - blocks, - validators, - hyperLibaries, -}: { - blocks: any; - validators: ImplementationByLanguage[]; - hyperLibaries: ImplementationByLanguage[]; -}) { - return ( - -
- Obsolete Tools - - Validators - - - - -
-
- ); -} -ImplementationsPages.getLayout = getLayout; -function ImplementationTable({ - implementationsByLanguage, - prefix, -}: { - implementationsByLanguage: any; - prefix: string; -}) { - const router = useRouter(); - return ( - <> -
- {implementationsByLanguage.map( - (implementationByLanguage: any, index: number) => { - const slug = - prefix + - slugify(implementationByLanguage.name, { - lower: true, - trim: true, - }); - const isActive = router.query.language === slug; - return ( - - {implementationByLanguage.name} - - ); - }, - )} -
-
- - - - - - - - - - {implementationsByLanguage.map( - (implementationByLanguage: any, index: number) => { - const slug = - prefix + - slugify(implementationByLanguage.name, { - lower: true, - trim: true, - }); - const isActive = router.query.language === slug; - if (router.query.language && !isActive) return null; - - return ( - - - - - {implementationByLanguage.implementations.map( - (implementation: any, index: number) => { - const allDrafts = [ - ...(implementation['date-draft'] || []), - ...(implementation['draft'] || []), - ]; - return ( - - - - - - - ); - }, - )} - - ); - }, - )} - -
- - About - - Drafts - - License -
- - {implementationByLanguage.name} - -
- - {implementation.name} - - - - - {allDrafts - ?.sort((a, b) => - DRAFT_ORDER.indexOf(a.toString()) < - DRAFT_ORDER.indexOf(b.toString()) - ? -1 - : 1, - ) - ?.map((draft: string | number) => ( - - {typeof draft === 'number' - ? zeroFill(2, draft) - : draft} - - ))} - - {implementation.license} -
-
- - ); -} diff --git a/pages/obsolete-implementations/intro.md b/pages/obsolete-implementations/intro.md deleted file mode 100644 index e58a83a1b..000000000 --- a/pages/obsolete-implementations/intro.md +++ /dev/null @@ -1,9 +0,0 @@ -_**NOTE:** Due to the long gap after draft-04, many projects that implemented that draft became inactive by the time draft-06 was published, or are looking for new contributors to move forward. Such projects are listed here_ - -_For implementations supporting (or actively working towards) draft-06 or later, see the main [Implementations](implementations) page._ - -Implementations below are written in different languages, and support part, or all, of the specification. - -Implementations are classified based on their functionality. When known, the license of the project is also mentioned. - -If you have updates to this list, make a pull request on the [GitHub repo](https://github.com/json-schema-org/website). diff --git a/pages/obsolete-implementations/main.md b/pages/obsolete-implementations/main.md deleted file mode 100644 index 5a00e407d..000000000 --- a/pages/obsolete-implementations/main.md +++ /dev/null @@ -1,11 +0,0 @@ - -### Benchmarks - -- Java - - [json-schema-validator-benchmark](https://github.com/networknt/json-schema-validator-perftest) - compares performance of three JSON schema validator implementations (only one of which supports draft-06+) in Java(Apache 2.0) - -- JavaScript - - [z-schema validator benchmark](https://github.com/zaggino/z-schema#benchmarks) - compares performance in the individual tests from JSON-Schema Test Suite (MIT) - - [JSCK validator benchmark](https://github.com/pandastrike/jsck#benchmarks) - shows performance for JSON-schemas of different complexity (MIT) - -## Hyper-Schema \ No newline at end of file diff --git a/pages/obsolete-implementations/main2.md b/pages/obsolete-implementations/main2.md deleted file mode 100644 index 01925db16..000000000 --- a/pages/obsolete-implementations/main2.md +++ /dev/null @@ -1,85 +0,0 @@ - -Schema Generators ------------------ - -- Python - - [JSL](https://github.com/aromanovich/jsl) (BSD) - a Python DSL for defining JSON Schemas -- JavaScript - - [json-schema-generator](https://github.com/krg7880/json-schema-generator) (MIT) - Node.js library usable both as a CLI util and as a Node module -- TypeScript - - [Typson](https://github.com/lbovet/typson) (Apache 2.0) -- Visual Studio - - [JSON Schema Generator](https://visualstudiogallery.msdn.microsoft.com/b4515ef8-a518-41ca-b48c-bb1fd4e6faf7) - free extension -- Sparx Enterprise Architect - - [API-Add-In](https://github.com/bayeslife/api-add-in) - Sparx EA extension for exporting JSON Schema from UML models - -Generators from schemas ------------------------ - -#### Data from schemas - -- JavaScript - - [json-schema-generator](https://github.com/json-schema-faker) (MIT) - JSON-Schema + fake data generators - -Data Parsing and Code Generation --------------------------------- - -- Delphi - - [DJsonSchema](https://github.com/schlothauer-wauer/DJsonSchema) (MIT) - JSON Schema reader and code generator for Delphi. -- Haskell - - [aeson-schema](https://github.com/Fuuzetsu/aeson-schema) (MIT) - generates code for a parser -- Ruby - - [autoparse](https://github.com/google/autoparse) (ASL 2.0) -- Scala - - [json-schema-codegen](https://github.com/VoxSupplyChain/json-schema-codegen) - Tool and SBT plugin for generating Scala, TypeScript models and parsers from Json-Schema definitions, *supports draft 4* (Apache 2.0) - - [Argus](https://github.com/aishfenton/argus) (MIT) - Macros for building models from JSON Schemas -- Swift - - [Bric-à-brac](https://github.com/glimpseio/BricBrac) (MIT) - generates idiomatic swift structs and parser/serializer from JSON schemas -- Golang - - [gojsonschema](https://github.com/andy-zhangtao/gojsonschema)(Apache 2.0) - golang package for generating golang struct *support for Draft 4*. [Demo](http://json.golang.chinazt.cc) - -UI Generation -------------- - -_TODO: Sort by draft support._ - -Various levels of support for UI generation primarily from the validation vocabulary or combined with UI specific definition. - -- JavaScript - - [JSON Editor](https://github.com/jdorn/json-editor) (MIT) - - [JSONForms](https://jsonforms.io) (EclipseSource) (MIT) - - [Jsonary](https://jsonary.com/) (MIT) - - [Metawidget](https://metawidget.org/) (LGPL) - - [pure-form webcomponent](https://github.com/john-doherty/pure-form) (MIT) - -Editors -------- - -- [Liquid XML Studio 2016](https://www.liquid-technologies.com/json-schema-editor) - *Graphical JSON schema editor for draft 4, context sensitive intellisense for JSON documents.* -- [ReSharper 2016.1](https://www.jetbrains.com/resharper/) - *code completion, inspections and quick fixes for JSON schema in Visual Studio 2010 - 2015, including support for JSON Path and regular expressions for schema editing. Support for draft-4* -- [Visual Studio 2013](http://www.visualstudio.com/) - *Auto-completion and tooltips based on JSON schema draft 3 and draft 4* -- [JSON Schema Editor](https://json-schema-editor.tangramjs.com) - *An intuitive editor for JSON schema online* -- [JSON Editor](https://json-editor.tangramjs.com) - *An online, schema-aware editor for JSON document* - -Compatibility -------------- - -- JavaScript - - [JSON Schema Compatibility](https://github.com/geraintluff/json-schema-compatability) - *converts draft 3 to draft 4* (Public Domain) - - -Documentation generation ------------------------- - -- JavaScript - - [Matic](https://github.com/mattyod/matic) (MIT) - - [Docson](https://github.com/lbovet/docson) (Apache 2.0) - - [doca](https://github.com/cloudflare/doca/) (BSD) See [@cloudflare/doca](https://github.com/cloudflare/json-schema-tools/tree/master/workspaces/doca) for draft-06+ support - - [prmd](https://github.com/interagent/prmd) (MIT) - -Other ------ - -- JavaScript - - [Dojo](https://www.dojotoolkit.org/) (AFL or BSD) - supports some aspects of JSON Schema - - [JSON Schema Random](https://github.com/andreineculau/json-schema-random) (Apache 2.0) diff --git a/pages/tools/JSONSchemaTool.ts b/pages/tools/JSONSchemaTool.ts index 6cdc016c4..b700edac7 100644 --- a/pages/tools/JSONSchemaTool.ts +++ b/pages/tools/JSONSchemaTool.ts @@ -34,6 +34,7 @@ export interface JSONSchemaTool { optOut?: boolean; }; lastUpdated?: string; + status?: 'obsolete'; } export interface Person { diff --git a/pages/tools/components/Sidebar.tsx b/pages/tools/components/Sidebar.tsx index 69f97e325..5a1c75717 100644 --- a/pages/tools/components/Sidebar.tsx +++ b/pages/tools/components/Sidebar.tsx @@ -54,7 +54,11 @@ export default function Sidebar({ environments: formData .getAll('environments') .map((value) => value as string), - }; + showObsolete: + (formData.get('showObsolete') as string) === 'showObsolete' + ? 'true' + : 'false', + } satisfies Transform; postAnalytics({ eventType: 'query', eventPayload: newTransform }); return newTransform; }); @@ -95,6 +99,12 @@ export default function Sidebar({ ); })} +