{"id":15012987,"url":"https://github.com/harrel56/json-schema","last_synced_at":"2025-11-21T00:06:27.690Z","repository":{"id":98586196,"uuid":"598294898","full_name":"harrel56/json-schema","owner":"harrel56","description":"JSON schema validation library written in Java","archived":false,"fork":false,"pushed_at":"2025-03-25T20:41:24.000Z","size":2036,"stargazers_count":22,"open_issues_count":3,"forks_count":5,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-03-25T21:30:42.773Z","etag":null,"topics":["java","json","json-schema","jsonschema","schema","validation","validator"],"latest_commit_sha":null,"homepage":"https://harrel.dev/json-schema","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/harrel56.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-02-06T20:09:14.000Z","updated_at":"2025-03-25T20:41:28.000Z","dependencies_parsed_at":"2023-03-06T02:00:34.147Z","dependency_job_id":"bf0bc862-5efb-4e77-85dd-b6b9955ce513","html_url":"https://github.com/harrel56/json-schema","commit_stats":{"total_commits":912,"total_committers":5,"mean_commits":182.4,"dds":"0.11403508771929827","last_synced_commit":"7d2dfb496c0a2ebc25ea3929e2f3d5747aa20da5"},"previous_names":[],"tags_count":34,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/harrel56%2Fjson-schema","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/harrel56%2Fjson-schema/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/harrel56%2Fjson-schema/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/harrel56%2Fjson-schema/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/harrel56","download_url":"https://codeload.github.com/harrel56/json-schema/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248512501,"owners_count":21116613,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["java","json","json-schema","jsonschema","schema","validation","validator"],"created_at":"2024-09-24T19:43:33.824Z","updated_at":"2025-11-21T00:06:27.678Z","avatar_url":"https://github.com/harrel56.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# json-schema\n\n[![build](https://github.com/harrel56/json-schema/actions/workflows/tests.yml/badge.svg)](https://github.com/harrel56/json-schema/actions/workflows/tests.yml)\n[![maven](https://img.shields.io/maven-central/v/dev.harrel/json-schema?label=maven%20central\u0026color=%2340ba12)](https://mvnrepository.com/artifact/dev.harrel/json-schema)\n[![javadoc](https://javadoc.io/badge2/dev.harrel/json-schema/javadoc.svg)](https://javadoc.io/doc/dev.harrel/json-schema)\n[![Coverage](https://sonarcloud.io/api/project_badges/measure?project=harrel56_json-schema\u0026metric=coverage)](https://sonarcloud.io/summary/new_code?id=harrel56_json-schema)\n[![Size](https://jarhell.harrel.dev/api/v1/badges/total_size/dev.harrel:json-schema)](https://jarhell.harrel.dev/packages/dev.harrel:json-schema)\n[![Bytecode](https://jarhell.harrel.dev/api/v1/badges/effective_bytecode/dev.harrel:json-schema)](https://jarhell.harrel.dev/packages/dev.harrel:json-schema)\n[![Dependencies](https://jarhell.harrel.dev/api/v1/badges/dependencies/dev.harrel:json-schema)](https://jarhell.harrel.dev/packages/dev.harrel:json-schema)\n\nDocumentation: https://harrel56.github.io/json-schema\n\nJava library implementing [JSON schema specification](https://json-schema.org/specification.html):\n- compatible with Java 8,\n- support for all recent [specification versions](https://harrel56.github.io/json-schema/dialects.html) [![Supported spec](https://img.shields.io/endpoint?url=https%3A%2F%2Fbowtie-json-schema.github.io%2Fbowtie%2Fbadges%2Fjava-dev.harrel.json-schema%2Fsupported_versions.json\u0026color=blue)](https://bowtie.report/#/implementations/java-json-schema):\n  - Draft 2020-12 [![Compliance](https://img.shields.io/endpoint?url=https%3A%2F%2Fbowtie.report%2Fbadges%2Fjava-dev.harrel.json-schema%2Fcompliance%2Fdraft2020-12.json\u0026color=brightgreen)](https://bowtie.report/#/dialects/draft2020-12),\n  - Draft 2019-09 [![Compliance](https://img.shields.io/endpoint?url=https%3A%2F%2Fbowtie.report%2Fbadges%2Fjava-dev.harrel.json-schema%2Fcompliance%2Fdraft2019-09.json\u0026color=brightgreen)](https://bowtie.report/#/dialects/draft2019-09),\n  - Draft 07 [![Compliance](https://img.shields.io/endpoint?url=https%3A%2F%2Fbowtie.report%2Fbadges%2Fjava-dev.harrel.json-schema%2Fcompliance%2Fdraft7.json\u0026color=brightgreen)](https://bowtie.report/#/dialects/draft7),\n  - Draft 06 [![Compliance](https://img.shields.io/endpoint?url=https%3A%2F%2Fbowtie.report%2Fbadges%2Fjava-dev.harrel.json-schema%2Fcompliance%2Fdraft6.json\u0026color=brightgreen)](https://bowtie.report/#/dialects/draft6),\n  - Draft 04 [![Compliance](https://img.shields.io/endpoint?url=https%3A%2F%2Fbowtie.report%2Fbadges%2Fjava-dev.harrel.json-schema%2Fcompliance%2Fdraft4.json\u0026color=brightgreen)](https://bowtie.report/#/dialects/draft4),\n- support for [custom keywords](https://harrel56.github.io/json-schema/evaluators.html),\n- support for annotation collection,\n- support for [format validation](https://harrel56.github.io/json-schema/format-validation.html) (for a price of one additional dependency 😉),\n- compatible with most of the JSON/YAML libraries ([supported libraries](https://harrel56.github.io/json-schema/json-yaml-providers.html)),\n- and no additional dependencies on top of that.\n\nCheck how it compares with other implementations:\n- [Bowtie](https://bowtie.report) - specification compliance (only mandatory behavior),\n- [Creek's benchmark](https://www.creekservice.org/json-schema-validation-comparison/performance) - benchmark for JVM based implementations.\n\n## Demo\nYou can check out how it works [here](https://harrel.dev/json-schema).\n\n## Installation\nPlease note that you will also need to include at least one of the supported JSON provider libraries (see [JSON provider setup](https://harrel56.github.io/json-schema/json-yaml-providers.html)).\n\n### Maven\n```xml\n\u003cdependency\u003e\n    \u003cgroupId\u003edev.harrel\u003c/groupId\u003e\n    \u003cartifactId\u003ejson-schema\u003c/artifactId\u003e\n    \u003cversion\u003e1.8.2\u003c/version\u003e\n\u003c/dependency\u003e\n```\n\n### Gradle\n```groovy\nimplementation 'dev.harrel:json-schema:1.8.2'\n```\n\n## Usage\nTo validate JSON against a schema, you just need to invoke:\n```java\nString schema = \"\"\"\n        {\n          \"type\": \"boolean\"\n        }\"\"\";\nString instance = \"true\";\nboolean valid = new ValidatorFactory().validate(schema, instance).isValid();\n```\n\n## Documentation\nFor more details please visit the [documentation](https://harrel56.github.io/json-schema).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fharrel56%2Fjson-schema","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fharrel56%2Fjson-schema","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fharrel56%2Fjson-schema/lists"}