{"id":17233280,"url":"https://github.com/petrounias/json-schema-toolkit","last_synced_at":"2025-10-27T09:51:52.438Z","repository":{"id":8971712,"uuid":"10714550","full_name":"petrounias/json-schema-toolkit","owner":"petrounias","description":"Programmatic building of JSON schemas (document and field mappings) with validation.","archived":false,"fork":false,"pushed_at":"2021-03-29T17:50:33.000Z","size":37,"stargazers_count":30,"open_issues_count":4,"forks_count":5,"subscribers_count":9,"default_branch":"master","last_synced_at":"2024-03-24T09:41:50.048Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"http://www.petrounias.org/software/json-schema-toolkit/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/petrounias.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2013-06-16T02:14:53.000Z","updated_at":"2023-01-23T23:24:09.000Z","dependencies_parsed_at":"2022-08-31T03:53:39.653Z","dependency_job_id":null,"html_url":"https://github.com/petrounias/json-schema-toolkit","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/petrounias%2Fjson-schema-toolkit","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/petrounias%2Fjson-schema-toolkit/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/petrounias%2Fjson-schema-toolkit/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/petrounias%2Fjson-schema-toolkit/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/petrounias","download_url":"https://codeload.github.com/petrounias/json-schema-toolkit/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248810883,"owners_count":21165195,"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":[],"created_at":"2024-10-15T05:02:29.111Z","updated_at":"2025-10-27T09:51:47.391Z","avatar_url":"https://github.com/petrounias.png","language":"Python","funding_links":[],"categories":["JSON Schema Validators"],"sub_categories":[],"readme":"JSON Schema Toolkit\n===================\n\nProgrammatic building of JSON schemas (recursive field mappings) with\nvalidation, a Django JSON Field, and native PostgreSQL JSON type constraints.\n\nVersion 1.0.0 alpha\n\nDocumentation https://json-schema-toolkit.readthedocs.org\n\nOverview\n========\n\nBuilt on top of https://github.com/zyga/json-document/ and\nhttps://github.com/zyga/json-schema-validator/, with\npowerful support for building and validating JSON documents. Can be used to\nprogrammatically build JSON schemas by mapping fields to a document or\nrecursively to other fields, as well as used for validating a Django JSON field\nduring save operations. If PostgreSQL \u003e= 9.2 is used, supports the native JSON\ndata type. If PostgreSQL \u003e= 9.3 is used, supports custom JSON SQL constraint\ngeneration for the Django Model.\n\nExtends json_document to provide nullable fields (in additional to optional\nfields), deletion of members (through del), a Pythonic API for dot notation\nmember access, as well as convenience input transformations for data such as\ndates and times, time deltas, and others.\n\n* JSON Schema: \u003c http://json-schema.org/ \u003e\n* Django: \u003c http://www.djangoproject.com/ \u003e\n* PostgreSQL JSON Functions and Operators\n  \u003c http://www.postgresql.org/docs/9.3/static/functions-json.html \u003e\n\n\nPrerequisites\n=============\n\nCore:\n\n- Python \u003e= 2.6\n- json_document \u003e= 0.8\n- json_schema_validator \u003e= 2.3\n\n\nOptionally, for the Django field:\n\n- Django \u003e= 1.4\n\n\nOptionally, for PostgreSQL native JSON data type:\n\n- PostgreSQL \u003e= 9.2\n- psycopg2 \u003e= 2.4\n\n\nOptionally, for JSON SQL constraints:\n\n- PostgreSQL \u003e= 9.3\n\n\nOptionally, for testing:\n\n- unittest2 \u003e= 0.5.1\n\n\nObtaining\n=========\n\n- Author's website for the project: http://www.petrounias.org/software/json-schema-toolkit/\n\n- Git repository on GitHub: https://github.com/petrounias/json-schema-toolkit/\n\n- Mercurial repository on BitBucket: http://www.bitbucket.org/petrounias/json-schema-toolkit/\n\n\nInstallation\n============\n\nEnsure the required packages json_document and json_schema_validator are\ninstalled, and then install json_schema_toolkit:\n\nVia setup tools::\n\n    python setup.py install\n\nVia pip and pypi::\n\n    pip install json-schema-toolkit\n\n\nRelease Notes\n=============\n\n- v1.0.0 alpha @ 16 June 2013 Initial public release.\n\n\nDevelopment Status\n==================\n\nActively developed and maintained. Currently used in production in proprietary\nprojects by the author and his team.\n\n\nFuture Work\n===========\n\n- Django Field and custom PostgreSQL JSON data type support.\n\n\nContributors\n============\n\nWritten and maintained by Alexis Petrounias \u003c http://www.petrounias.org/ \u003e\n\nBased on work and feedback by Zygmunt Krynicki \u003c http://www.suxx.pl/ \u003e\n\n\nLicense\n=======\n\nReleased under the OSI-approved BSD license. Please note that json_document and\njson_schema_validator are LGPLv3 and not copyleft-free, so this may affect your\nability to include this software's requirements in proprietary software. This\nsoftware only links against the aforementioned libraries in accordance with\ntheir license.\n\nCopyright (c) 2013 Alexis Petrounias \u003c www.petrounias.org \u003e,\nall rights reserved.\n\nRedistribution and use in source and binary forms, with or without modification,\nare permitted provided that the following conditions are met:\n\nRedistributions of source code must retain the above copyright notice, this list\nof conditions and the following disclaimer.\n\nRedistributions in binary form must reproduce the above copyright notice, this\nlist of conditions and the following disclaimer in the documentation and/or\nother materials provided with the distribution.\n\nNeither the name of the author nor the names of its contributors may be used to\nendorse or promote products derived from this software without specific prior\nwritten permission.\n\nTHIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND\nANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED\nWARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE\nDISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR\nANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES\n(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;\nLOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON\nANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT\n(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS\nSOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpetrounias%2Fjson-schema-toolkit","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpetrounias%2Fjson-schema-toolkit","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpetrounias%2Fjson-schema-toolkit/lists"}