Corvus.Text.Json
5.0.0
dotnet add package Corvus.Text.Json --version 5.0.0
NuGet\Install-Package Corvus.Text.Json -Version 5.0.0
<PackageReference Include="Corvus.Text.Json" Version="5.0.0" />
<PackageVersion Include="Corvus.Text.Json" Version="5.0.0" />
<PackageReference Include="Corvus.Text.Json" />
paket add Corvus.Text.Json --version 5.0.0
#r "nuget: Corvus.Text.Json, 5.0.0"
#:package Corvus.Text.Json@5.0.0
#addin nuget:?package=Corvus.Text.Json&version=5.0.0
#tool nuget:?package=Corvus.Text.Json&version=5.0.0
Corvus.Text.Json
High-performance JSON library for .NET that builds on the patterns of System.Text.Json with:
- Source-generated types from JSON Schema (draft 4, 6, 7, 2019-09, 2020-12)
- Pooled-memory parsing via
ParsedJsonDocument<T>— just 136B per-document allocation (91% less thanJsonNode) - Mutable document building via
JsonDocumentBuilder<T>andJsonWorkspace - Full schema validation with
EvaluateSchema()— 10× faster than other .NET validators - Extended numeric types —
BigNumber(arbitrary precision),BigInteger,Int128,Half - NodaTime integration —
LocalDate,OffsetDateTime,OffsetTime,Periodfrom JSON Schema formats - Pattern matching — type-safe
Match()foroneOf/anyOfdiscriminated unions
Installation
dotnet add package Corvus.Text.Json
Quick Start
using Corvus.Text.Json;
// Parse JSON with pooled memory
using var doc = ParsedJsonDocument<JsonElement>.Parse(
"""{"name":"Alice","age":30}""");
JsonElement root = doc.RootElement;
string name = root.GetProperty("name").GetString(); // "Alice"
int age = root.GetProperty("age").GetInt32(); // 30
With Source-Generated Types
// Generate strongly-typed C# from JSON Schema
[JsonSchemaTypeGenerator("Schemas/person.json")]
public readonly partial struct Person;
// Parse, access, and validate
using var doc = ParsedJsonDocument<Person>.Parse(json);
Person person = doc.RootElement;
string name = (string)person.Name;
bool valid = person.EvaluateSchema();
// Mutate with the builder pattern
using JsonWorkspace workspace = JsonWorkspace.Create();
using var builder = person.CreateBuilder(workspace);
Person.Mutable root = builder.RootElement;
root.SetAge(31);
Target Frameworks
- .NET 10.0, 9.0
- .NET Standard 2.0, 2.1
Related Packages
| Package | Purpose |
|---|---|
| Corvus.Text.Json.SourceGenerator | Roslyn source generator — generates C# from JSON Schema at build time |
| Corvus.Json.CodeGenerator | CLI tool for ahead-of-time code generation |
| Corvus.Text.Json.Validator | Runtime schema validation using dynamically compiled schemas |
Documentation
See the full documentation.
License
Apache 2.0 — see LICENSE.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 is compatible. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
| .NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
| .NET Standard | netstandard2.0 is compatible. netstandard2.1 is compatible. |
| .NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
| MonoAndroid | monoandroid was computed. |
| MonoMac | monomac was computed. |
| MonoTouch | monotouch was computed. |
| Tizen | tizen40 was computed. tizen60 was computed. |
| Xamarin.iOS | xamarinios was computed. |
| Xamarin.Mac | xamarinmac was computed. |
| Xamarin.TVOS | xamarintvos was computed. |
| Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.0
- Microsoft.Bcl.AsyncInterfaces (>= 10.0.7)
- Microsoft.Bcl.HashCode (>= 6.0.0)
- NodaTime (>= 3.3.1)
- System.Buffers (>= 4.6.1)
- System.IO.Pipelines (>= 10.0.7)
- System.Memory (>= 4.6.3)
- System.Reflection.Emit.Lightweight (>= 4.7.0)
- System.Runtime.CompilerServices.Unsafe (>= 6.1.2)
- System.Text.Encodings.Web (>= 10.0.7)
- System.Threading.Tasks.Extensions (>= 4.6.3)
-
.NETStandard 2.1
- Microsoft.Bcl.AsyncInterfaces (>= 10.0.7)
- Microsoft.Bcl.HashCode (>= 6.0.0)
- NodaTime (>= 3.3.1)
- System.IO.Pipelines (>= 10.0.7)
- System.Runtime.CompilerServices.Unsafe (>= 6.1.2)
- System.Text.Encodings.Web (>= 10.0.7)
-
net10.0
- NodaTime (>= 3.3.1)
-
net9.0
- NodaTime (>= 3.3.1)
NuGet packages (9)
Showing the top 5 NuGet packages that depend on Corvus.Text.Json:
| Package | Downloads |
|---|---|
|
Corvus.Text.Json.Validator
Dynamically load, compile, and validate JSON documents against JSON Schema at runtime using Roslyn and Corvus.Text.Json. Ideal for schema registries, configuration validation, and user-supplied schemas. |
|
|
Corvus.Text.Json.JsonLogic.CodeGeneration
Code generation engine for Corvus.Text.Json.JsonLogic — walks JsonLogic rules and emits optimized C# evaluation code. |
|
|
Corvus.Text.Json.JsonLogic
JsonLogic rule engine for Corvus.Text.Json, with zero-allocation bytecode VM evaluation, pluggable operators, and compile-time constant folding. |
|
|
Corvus.Text.Json.Patch
RFC 6902 JSON Patch support for Corvus.Text.Json, with single-pass patching of immutable documents and direct mutation of mutable documents. |
|
|
Corvus.Text.Json.Jsonata
JSONata query and transformation language for Corvus.Text.Json, with zero-allocation evaluation, compiled delegate trees, and pooled workspace memory. |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 5.0.0 | 350 | 5/14/2026 |