Cvoya.Graph.Model 1.0.0-alpha.20250718.1

This is a prerelease version of Cvoya.Graph.Model.
dotnet add package Cvoya.Graph.Model --version 1.0.0-alpha.20250718.1
                    
NuGet\Install-Package Cvoya.Graph.Model -Version 1.0.0-alpha.20250718.1
                    
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="Cvoya.Graph.Model" Version="1.0.0-alpha.20250718.1" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Cvoya.Graph.Model" Version="1.0.0-alpha.20250718.1" />
                    
Directory.Packages.props
<PackageReference Include="Cvoya.Graph.Model" />
                    
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 Cvoya.Graph.Model --version 1.0.0-alpha.20250718.1
                    
#r "nuget: Cvoya.Graph.Model, 1.0.0-alpha.20250718.1"
                    
#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 Cvoya.Graph.Model@1.0.0-alpha.20250718.1
                    
#: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=Cvoya.Graph.Model&version=1.0.0-alpha.20250718.1&prerelease
                    
Install as a Cake Addin
#tool nuget:?package=Cvoya.Graph.Model&version=1.0.0-alpha.20250718.1&prerelease
                    
Install as a Cake Tool

Cvoya.Graph.Model

NuGet License

GraphModel is a powerful, type-safe .NET library for working with graph data structures and graph databases. This core package provides the fundamental abstractions, interfaces, and base implementations.

🚀 Quick Start

// Define your graph entities
[Node(Label = "User")]
public record User : Node
{
    public string Email { get; set; }
    public string Name { get; set; }
}

[Relationship(Label = "FOLLOWS")]
public record Follows : Relationship
{
    public DateTime CreatedDate { get; set; }
}

// Use with a provider (Neo4j, etc.)
var store = new Neo4jGraphStore(connectionString);
var graph = store.Graph;
await graph.CreateNodeAsync(new User { Email = "user@example.com", Name = "John" });

📦 Core Features

  • Type-safe entity modeling with attributes and interfaces
  • LINQ-style querying with full IntelliSense support
  • Graph traversal with depth control and filtering
  • Transaction management with ACID guarantees
  • Extensible provider model for different graph databases
  • Compile-time validation with built-in analyzers
  • Code generation for performant serialization/deserialization

🏗️ Architecture

This package provides the core abstractions:

  • INode - Graph node interface
  • IRelationship - Graph relationship interface
  • IGraph - Main graph operations interface
  • IGraphQueryable<T> - LINQ-style querying
  • Attributes - Entity configuration ([Node], [Relationship], [Property])

📚 Documentation

For comprehensive documentation, examples, and best practices:

🌐 Complete Documentation

🤝 Contributing

Contributions are welcome! Please see our Contributing Guide.

📄 License

This project is licensed under the Apache License 2.0 - see the LICENSE file for details.


Need help? Check the troubleshooting guide or open an issue.

Product Compatible and additional computed target framework versions.
.NET 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. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
  • net10.0

    • No dependencies.

NuGet packages (2)

Showing the top 2 NuGet packages that depend on Cvoya.Graph.Model:

Package Downloads
Cvoya.Graph.Model.Serialization

A serialization abstraction for the Graph Data Model.

Cvoya.Graph.Model.Neo4j

A graph provider for the Neo4j database with support for LINQ and the updated Graph.Model abstraction.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
1.0.0-alpha.20250718.1 70 7/18/2025
1.0.0-alpha.20250718.0 75 7/18/2025
1.0.0-alpha.20250716.4 111 7/16/2025