CharacterCardV3Sharp 1.0.0

dotnet add package CharacterCardV3Sharp --version 1.0.0
                    
NuGet\Install-Package CharacterCardV3Sharp -Version 1.0.0
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="CharacterCardV3Sharp" Version="1.0.0" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="CharacterCardV3Sharp" Version="1.0.0" />
                    
Directory.Packages.props
<PackageReference Include="CharacterCardV3Sharp" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add CharacterCardV3Sharp --version 1.0.0
                    
#r "nuget: CharacterCardV3Sharp, 1.0.0"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package CharacterCardV3Sharp@1.0.0
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=CharacterCardV3Sharp&version=1.0.0
                    
Install as a Cake Addin
#tool nuget:?package=CharacterCardV3Sharp&version=1.0.0
                    
Install as a Cake Tool

CharacterCardV3Sharp

A .NET library for reading and writing Character Card V3 files — the character-definition format used by AI chat frontends such as SillyTavern. A CCv3 "card" is just a PNG avatar image with the character's data (personality, greetings, lorebook, etc.) embedded in its metadata, so the same file works as both a picture and a data file.

The library parses that embedded data into plain C# classes, and can go the other way too: take a CharacterCardV3 object and embed it into a PNG, producing a file that follows the spec.

What it does

  • Read: loads a PNG's ccv3 metadata chunk into a fully-typed CharacterCardV3 object (name, description, personality, scenario, greetings, lorebook/character book, assets, extensions, ...). Falls back to the legacy V2 chara chunk and upgrades it automatically if no V3 data is present.
  • Write: serializes a CharacterCardV3 back into a source PNG's metadata, without touching the image's pixel data. By default it also writes a legacy V2 chunk alongside the V3 one, so cards it produces stay readable by apps that don't support V3 yet.
  • Works directly on the PNG's chunk stream — no image-decoding library involved, so the artwork is never re-encoded.
  • Targets both .NET 8 and .NET Standard 2.0, so it can be used from modern .NET apps as well as older/.NET Framework projects.
using CharacterCardV3Sharp;

// Read a card
CharacterCardV3 card = CharacterCardPng.Load("some-character.png");
Console.WriteLine(card.Data.Name);

// Edit and write it back into a (possibly different) PNG
card.Data.CreatorNotes = "Updated via CharacterCardV3Sharp";
CharacterCardPng.Save(card, sourcePngPath: "avatar.png", destinationPngPath: "some-character.png");

Character Card V3 Editor

The repository also includes CharacterCardV3Sharp.App, a cross-platform desktop GUI (built with Avalonia) for people who'd rather not write code: open a card's PNG, view and edit every field in a form, and save it back out as a spec-compliant V3 card.

Character Card V3 Editor

The editor is fully localized (English, Italian, Spanish, French, German, Portuguese, Russian, Chinese and Japanese) with a language switcher that applies immediately, no restart needed.

Project layout

src/
  CharacterCardV3Sharp/       the library (net8.0 + netstandard2.0)
  CharacterCardV3Sharp.App/   the Avalonia desktop editor
tests/
  CharacterCardV3Sharp.Tests/ xUnit tests for the library

Building

dotnet build
dotnet test tests/CharacterCardV3Sharp.Tests/CharacterCardV3Sharp.Tests.csproj
dotnet run --project src/CharacterCardV3Sharp.App

Spec reference

Implemented against the Character Card V3 specification. Not covered yet: the CHARX (zip-based) asset bundling format described in the spec as the successor to inline PNG asset chunks.

Product 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 is compatible.  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 was computed.  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 was computed.  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 was computed. 
.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. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
1.0.0 108 7/18/2026

First Release of CharacterCardV3Sharp. This library allows you to read and write Character Card V3 files in .NET applications.