Skip to content

Konfigo Wiki

CI/CD Version License: MIT

Konfigo is a centralized, real-time configuration management service. It lets you declare typed configuration schemas in your application code, push them to a shared backend, and receive live value updates over gRPC — without restarting services.

How it works

  1. Your service declares configuration classes using language-native annotations (attributes in .NET/C#, struct tags in Go, decorators in Python).
  2. On startup the SDK scans those classes, registers the schema with the Konfigo backend under a versioned label, and loads the current snapshot.
  3. A long-lived gRPC stream delivers subsequent changes instantly as operators update values in the web UI.
  4. Each config key tracks a generation counter. Stale or duplicate updates are dropped; only newer generations are applied to the in-memory store.

Where to start

  • :material-sitemap: Architecture

    System components, domain model, real-time delivery, authentication & authorization

  • :material-rocket-launch: Deployment

    Local development, Docker, environment variables, and CI/CD

  • :material-api: REST API

    All HTTP endpoints with request/response shapes

  • :material-swap-horizontal: gRPC Protocol

    Protobuf service definition and RPC semantics

  • :material-puzzle: SDKs

    Client libraries for .NET, Go, and Python

  • :material-play-box: Samples

    Minimal runnable apps demonstrating each SDK

Tech stack

Layer Technology
Backend ASP.NET Core (.NET 10), PostgreSQL 14, Redis 7
Frontend SvelteKit, Tailwind CSS
Transport gRPC (protobuf), SignalR
Auth SAML 2.0 / OpenID Connect / JWT (configurable)
CI/CD GitHub Actions → DockerHub / GHCR / NuGet / PyPI

Repository layout

konfigo/
├── apps/
│   ├── backend/          # ASP.NET Core server (REST + gRPC + SignalR)
│   └── frontend/         # SvelteKit web UI
├── packages/
│   ├── dotnet/           # .NET client SDK (NuGet)
│   ├── go/               # Go client SDK
│   └── python/           # Python client SDK (PyPI)
├── samples/              # Minimal runnable apps demonstrating each SDK
│   ├── dotnet/           # ASP.NET Core sample using Konfigo.Client
│   ├── go/               # Go sample using the Go SDK + gRPC transport
│   └── python/           # Async Python sample using the Python SDK + gRPC transport
└── docs/                 # Extended documentation & wiki