AI SummaryExRam.Gremlinq is a .NET object-graph-mapper (OGM) for Apache TinkerPop™ Gremlin-enabled graph databases. It translates strongly-typed C# LINQ-style queries into Gremlin bytecode/scripts and handles serialization/deserialization. The solution contains ~37 projects (17 src, 16 test, 1 templates, 3 te
Install
Copy this and paste it into Claude Code, Cursor, or any AI assistant:
I want to add the "ExRam.Gremlinq — Copilot Instructions" prompt rules to my project. Repository: https://github.com/Gremlinq/ExRam.Gremlinq Please read the repo to find the rules/prompt file, then: 1. Download it to the correct location (.cursorrules, .windsurfrules, .github/prompts/, or project root — based on the file type) 2. If there's an existing rules file, merge the new rules in rather than overwriting 3. Confirm what was added
Description
A .NET object-graph-mapper for Apache TinkerPop™ Gremlin enabled databases.
Repository Overview
ExRam.Gremlinq is a .NET object-graph-mapper (OGM) for Apache TinkerPop™ Gremlin-enabled graph databases. It translates strongly-typed C# LINQ-style queries into Gremlin bytecode/scripts and handles serialization/deserialization. The solution contains ~37 projects (17 src, 16 test, 1 templates, 3 test infrastructure). SDK: .NET 10.0.103 (pinned in global.json with rollForward: disable—the exact SDK version is required). Language: C# 14.0 with nullable enabled, implicit usings, and TreatWarningsAsErrors. Solution file: ExRam.Gremlinq.slnx (XML-based slnx format, not classic .sln). Versioning: Nerdbank.GitVersioning (version.json). Package management: Central Package Management via Directory.Packages.props.
Build
Always build from the repo root. The solution uses the slnx format: ` dotnet build ExRam.Gremlinq.slnx ` • Debug builds target only net10.0. • Release builds multi-target: src projects target net6.0;net7.0;net8.0;net9.0;net10.0; test projects target net8.0;net9.0;net10.0. • TreatWarningsAsErrors is enabled globally. All warnings must be resolved before a PR will pass CI. • Source Generators in src/Core.Generators target netstandard2.0 and are wired as analyzers (Roslyn source generators). • Source Analyzers in src/Analyers target netstandard2.0 and are wired as analyzers.
Testing
Tests use xUnit v3 (xunit.v3.mtp-v2) with the Microsoft.Testing.Platform runner (set in global.json). Snapshot/verification testing uses Verify.XunitV3 with FluentAssertions.
Running tests
` dotnet test --project test/Core.Tests/ExRam.Gremlinq.Core.Tests.csproj ` Or run all tests (note: CosmosDb emulator tests will fail without the emulator): ` dotnet test --solution ExRam.Gremlinq.slnx --ignore-exit-code 8 ` The --ignore-exit-code 8 flag is used because some assemblies only contain tests marked with [Fact(Explicit = true)]. These tests would signal "zero tests ran" without the flag. Important: Test parallelization is disabled globally (test/AssemblyInfo.cs). All test projects ending in Tests are configured as executable (OutputType=Exe) with UseMicrosoftTestingPlatformRunner=true.
Discussion
Health Signals
My Fox Den
Community Rating
Sign in to rate this booster
Works With
Any AI assistant that accepts custom rules or system prompts