RuleGate Documentation

August 1, 2026 · View on GitHub

The documentation has two connected layers:

  1. The guide teaches RuleGate from first principles through production in one ordered path.
  2. Reference documents provide exhaustive contracts, operators, failure behavior, compatibility, and maintainer procedures.

Repository Markdown is the canonical source. The GitHub Wiki edition is built from the guide so the two forms do not drift.

Start with the guide

Open The RuleGate Guide

StageChapters
LearnFoundations · Packages
BuildFirst API · Policy language · ASP.NET Core
Supply trusted dataAttributes and context · Identity and Keycloak
Add frontendFrontend integration
AutomateCLI lifecycle · Testing and diagnostics
Operate and extendPolicy sources · Extensibility
ApplyReal-world recipes · Production checklist

Use the glossary whenever an authorization term is unfamiliar.

Reference library

NeedReference
Complete subject/resource/action/context modelAuthorization model
Every YAML member, operator, type, and validation ruleManifest reference
Minimal API, MVC, imperative, HTTP, and engine integrationASP.NET Core reference
Subject, resource, and context providersEnrichment reference
Modern Angular guards, directives, and generationAngular reference
Angular 9–22 package selectionFrontend compatibility
Keycloak backend and frontend mappingKeycloak reference
CLI commands and exit codesCLI reference
Deterministic policy fixturesPolicy testing
Decision explanation and manifest lintingExplain and lint
Deterministic C# constantsC# generation
Local sources and atomic reloadPolicy sources
Logging and custom sinksDiagnostics
Activities, metrics, benchmarks, and concurrencyTelemetry and performance
Full trust and failure boundariesSecurity model
.NET and Angular support matrixPlatform compatibility
Runnable package-consuming applicationsReference applications
Preview-to-stable upgradeMigration to 1.0
Released and planned capabilitiesRoadmap

Published package families

All six NuGet packages and all three npm packages have a stable 1.0.0 release. Use the package selection chapter for package links, dependency roles, install commands, and framework ranges.

Samples

Maintainer documentation

Maintainer release procedures are intentionally outside the beginner learning path.