GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — GitHub - json-everything/json-everything: System.Text.Json-based support for all of your JSON needs.

BranchesTags
Open more actions menu

Latest commit

 

History

3,851 Commits
3,851 Commits

Folders and files

NameName
Last commit message
Last commit date
.github
.github
 
 
Meta-Schemas
Meta-Schemas
 
 
Resources
Resources
 
 
doc-tool/xml
doc-tool/xml
 
 
json-everything.net
json-everything.net
 
 
ref-repos
ref-repos
 
 
src
src
 
 
tools
tools
 
 
.editorconfig
.editorconfig
 
 
.gitattributes
.gitattributes
 
 
.gitignore
.gitignore
 
 
.gitmodules
.gitmodules
 
 
.json-schema-identification.json
.json-schema-identification.json
 
 
.nojekyll
.nojekyll
 
 
AGENTS.md
AGENTS.md
 
 
CLAUDE.md
CLAUDE.md
 
 
CODE_OF_CONDUCT.md
CODE_OF_CONDUCT.md
 
 
CONTRIBUTING.md
CONTRIBUTING.md
 
 
LICENSE
LICENSE
 
 
OSMFEULA.txt
OSMFEULA.txt
 
 
README.md
README.md
 
 
json-everything.sln
json-everything.sln
 
 
json-everything.sln.DotSettings
json-everything.sln.DotSettings
 
 
json-everything.snk
json-everything.snk
 
 
submodule-update.cmd
submodule-update.cmd
 
 

Repository files navigation

🌐 Language

English

简体中文

繁體中文

日本語

한국어

हिन्दी

ไทย

Français

Deutsch

Español

Itapano

Русский

Português

Nederlands

Polski

العربية

فارسی

Türkçe

Tiếng Việt

Bahasa Indonesia

Build & Test Test results Percentage of issues still open Average time to resolve an issue License

What is json-everything?

The primary philosophy behind json-everything is to ensure that common JSON functionality has good support in the System.Text.Json space.

The first step to that is checking whether there exist other projects that support a given function.

If so, that effort likely won't be duplicated here. A bit farther down you'll find a list of other projects that are doing some cool things with JSON.

Otherwise, it's open to consideration for this project.

Playground Documentation Blog Interactive Learning
Try it online
json-everything.net
Documentation
docs.json-everything.net
Blog
blog.json-everything.net
Learn
learn.json-everything.net
Discuss Ask Built with Supported by
Slack StackOverflow Made with Jetbrains Resharper Supported by Open Source Maintenance Fee

What's in the box?

There are actually multiple boxes. Each piece of functionality has been broken out into its own library, so you can pick and choose the one(s) that you need.

All libraries are built to .Net Standard 2.0 and .Net 8, 9, and 10.

JsonSchema.Net
NuGet versionNuGet version
JSON Schema, drafts 6 and higher
JsonSchema.Net.Generation
NuGet versionNuGet version
Generation of schemas from .Net types
JsonSchema.Net.Api
NuGet versionNuGet version
JSON Schema validation for ASP.Net APIs
JsonSchema.Net.Generation.DataAnnotations
NuGet versionNuGet version
Schema generation support for System.ComponentModel.DataAnnotations.
JsonSchema.Net.DataGeneration
NuGet versionNuGet version
Random instance data generation (powered by Bogus)
JsonSchema.Net.Data
NuGet versionNuGet version
A vocabulary for accessing instance and external data
JsonSchema.Net.ArrayExt
NuGet versionNuGet version
A vocabulary for extending array validation
JsonSchema.Net.OpenApi
NuGet versionNuGet version
OpenApi 3.1 vocabulary extension (used by Graeae)
JsonPath.Net
NuGet versionNuGet version
JSON Path (RFC 9535)
JsonPatch.Net
NuGet versionNuGet version
JSON Patch (RFC 6902)
JsonPointer.Net
NuGet versionNuGet version
JSON Pointer (RFC 6901) and Relative JSON Pointer (Specification)
JsonLogic
NuGet versionNuGet version
JsonLogic (Website)
JsonE.Net
NuGet versionNuGet version
JSON-e (Website)
Json.More.Net
NuGet versionNuGet version
General-use extensions that probably should have been included in System.Text.Json[.Nodes] but weren't
Yaml2JsonNode
NuGet versionNuGet version
Conversions between the YAML document model in YamlDotNet and JsonNode (both directions).

All of the above libraries offer complete support for their associated specifications.

Error message translations for JsonSchema.Net available in:

  • Italian it
  • Norwegian nb-NO
  • Polish pl-PL
  • Portuguese pt
  • Russian ru
  • Spanish es
  • Swedish sv-SE
  • Turkish tr-TR

NOTE Each language pack is provided by its own Nuget package.

You can also view JSON Schema Test Suite results on Bowtie, which runs the test suite against multiple implementations across different platforms.

DISCLAIMER My library, JsonSchema.Net, is not related to or associated with the website https://jsonschema.net, except that they are both excellent JSON Schema tools.

Deprecated packages

These packages have also been a part of this suite but are no longer supported.

JsonSchema.Net.CodeGeneration
NuGet versionNuGet version
Generation of C# code from schemas Deprecated in favor of Corvus.JsonSchema

System.Text.Json support by other projects

If you don't find what you're looking for here, please try one of these excellent projects:

  • JsonCons.Net by @danielaparker
    • JSON Pointer
    • JSON Patch
    • JSON Merge Patch
    • JSON Path
    • JMES Path
  • Corvus.JsonSchema by @mwadams
    • JSON Schema validation with a C# code generation focus
  • (more to come)

If you use JSON to do something that is not covered by a library in this suite or one of the above projects, feel free to create a feature issue.

If you maintain or know of another project that extends System.Text.Json to do cool things, I'd like to list it here, so please create a general issue to let me know about it.

Contributing

Please see the Code of Conduct and the CONTRIBUTING file for more information.

Project Funding & Sponsorship

Also ensure the long-term sustainability of this project, some users of the compiled libraries will be required to pay a monthly maintenance fee as specified by the package license. This fee is required to be paid by all organizations or users of any library from this project who generate revenue. You can pay the fee via GitHub Sponsors.

To enact this, an EULA on binary releases is included in Nuget packages published from this project.

For more information on who must pay the fee and other frequently asked questions, please see the Open Source Maintenance Fee organisation page.

.NET Foundation

This project is a .NET Foundation member.

About

System.Text.Json-based support for all of your JSON needs.

json-everything.net/

Topics

jsonjson-ejson-logicjson-patchjson-pathjson-pointerjson-schemajsonschema-validatoryaml2json

Resources

Readme
MIT license

Code of conduct

Code of conduct

Contributing

Contributing

Security policy

Security policy
Activity
Custom properties

Stars

1.3k stars

Watchers

20 watching

Forks

206 forks
Report repository

Sponsor this project

Contributors

Languages

You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.