Skip to content

Commit 58dfe08

Browse files
committed
Merge CLI/web validators into main section
Having these separate took up a lot of space and also made things appear in inconsistent ways. Just treat them as "languages" (which we do in other sections anyway), and remove the sorting by language name so we can keep them at the end. Also compress the draft support wording/formatting as it was taking up a lot of space. All notes should be unformatted (not italicized) Don't show empty () if there's no license given. One web tool was not even a validator so move it to the right section. A Go tool from another section is also a validator, so add it.
1 parent f863540 commit 58dfe08

File tree

3 files changed

+33
-37
lines changed

3 files changed

+33
-37
lines changed

_data/validator-cli.yaml

Lines changed: 0 additions & 14 deletions
This file was deleted.

_data/validator-libraries-modern.yml

Lines changed: 25 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,11 @@
2727
notes:
2828
draft: [7, 6, 4]
2929
license: BSD-3-Clause
30+
- name: qri-io/jsonschema
31+
url: https://github.com/qri-io/jsonschema
32+
draft: [7]
33+
license: MIT
34+
notes: includes custom validator support, rich error returns
3035
- name: Java
3136
implementations:
3237
- name: everit-org/json-schema
@@ -38,7 +43,7 @@
3843
implementations:
3944
- name: ajv
4045
url: https://github.com/epoberezkin/ajv
41-
notes: "for Node.js and browsers - *supports [custom keywords](https://github.com/epoberezkin/ajv-keywords) and [$data reference](https://github.com/json-schema-org/json-schema-spec/issues/51)*"
46+
notes: "for Node.js and browsers - supports [custom keywords](https://github.com/epoberezkin/ajv-keywords) and [$data reference](https://github.com/json-schema-org/json-schema-spec/issues/51)"
4247
draft: [7, 6, 4]
4348
license: MIT
4449
- name: djv
@@ -76,3 +81,22 @@
7681
notes:
7782
draft: [7, 6, 4]
7883
license: MIT
84+
- name: Web (Online)
85+
implementations:
86+
- name: JSON Schema Validator
87+
url: https://www.jsonschemavalidator.net/
88+
draft: [7, 6, 4, 3]
89+
- name: JSON Schema Lint
90+
url: http://jsonschemalint.com/
91+
draft: [6, 4, 3, 2, 1]
92+
- name: Command Line
93+
implementations:
94+
- name: ajv-cli
95+
license: MIT
96+
url: 'https://www.npmjs.com/package/ajv-cli'
97+
draft: [7, 6, 4]
98+
- name: Polyglottal JSON Schema Validator
99+
license: MIT
100+
url: 'https://www.npmjs.com/package/pajv'
101+
draft: [6, 4]
102+
notes: can be used with YAML and many other formats besides JSON

implementations.md

Lines changed: 8 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -22,19 +22,17 @@ If you have updates to this list, make a pull request on the [GitHub repo](https
2222
Validators
2323
----------
2424

25-
### Libraries
26-
2725
<nav class="intra" markdown="1">
2826

29-
{% assign validator-libraries = site.data.validator-libraries-modern | sort:"name" %}
27+
{% assign validator-libraries = site.data.validator-libraries-modern %}
3028

3129
{% for language in validator-libraries %}
3230
- [{{ language.name }}](#validator-{% if language.anchor-name %}{{ language.anchor-name }}{% else %}{{ language.name | downcase }}{% endif %})
3331
{% endfor %}
3432

3533
</nav>
3634

37-
<!-- To add a validator library, add it in _data/validator-libraries-modern.yml -->
35+
<!-- To add a validator, add it in _data/validator-libraries-modern.yml -->
3836

3937
<ul>
4038
{% for language in validator-libraries %}
@@ -46,11 +44,14 @@ Validators
4644
<a href="{{implementation.url}}">{{ implementation.name }}</a>
4745

4846
{% if implementation.draft %}
49-
<em>supports draft-0{{ implementation.draft | join: ", draft-0" }}</em>
47+
<em>draft-0{{ implementation.draft | join: ", -0" }}</em>
5048
{% endif %}
5149

5250
{{implementation.notes | markdownify | remove: '<p>' | remove: '</p>'}}
53-
({{ implementation.license | join: ", " }})
51+
52+
{% if implementation.license %}
53+
({{ implementation.license | join: ", " }})
54+
{% endif %}
5455

5556
</li>
5657
{% endfor %}
@@ -59,22 +60,6 @@ Validators
5960
{% endfor %}
6061
</ul>
6162

62-
63-
64-
### Online
65-
66-
- [JSON Schema Validator](https://www.jsonschemavalidator.net/) - validate against your own schemas
67-
- [JSON Schema Lint](http://jsonschemalint.com/) - validate against your own schemas
68-
- [quicktype.io](https://app.quicktype.io/#l=schema) - infer JSON Schema from samples, and generate TypeScript, C++, go, Java, C#, Swift, etc. types from JSON Schema
69-
70-
### Command Line
71-
72-
<!-- To add a validator library, add it in _data/validator-libraries-modern.yml -->
73-
74-
{% for tool in site.data.validator-cli %}
75-
- [{{ tool.name }}]({{ tool.url }}) <em>[draft-0{{ tool.draft | join: ", draft-0" }}]</em> ({{ tool.license | join: ", " }}){% if tool.notes %}
76-
- {{ tool.notes }} {% endif %}{% endfor %}
77-
7863
### Benchmarks
7964

8065
Benchmarks that compare at least two implementations supporting draft-06+ may be listed here.
@@ -142,6 +127,7 @@ Generators that produce schemas that are compatible with draft-06+ (e.g. no bool
142127
- [typescript-json-schema](https://github.com/YousefED/typescript-json-schema)
143128
- Online (web tool)
144129
- [jsonschema.net](http://www.jsonschema.net) - generates schemas from example data
130+
- [quicktype.io](https://app.quicktype.io/#l=schema) - infer JSON Schema from samples, and generate TypeScript, C++, go, Java, C#, Swift, etc. types from JSON Schema
145131

146132
Data parsing and code generation
147133
--------------------------------

0 commit comments

Comments
 (0)