Skip to content

ZibStack.NET

Source generators that write the boilerplate so you don't have to. Zero reflection, zero runtime overhead.

Zero architectural buy-in. Add one attribute, keep everything else unchanged.

Log

[Log] on a method or class — compile-time entry/exit/exception logging with zero allocation. Quiet by default, opt in to interpolated-string LogInformation($"...") by importing ZibStack.NET.Log.

Learn more

Aop — built-in [Trace]

[Trace] gives you OpenTelemetry spans on any method with one attribute. Stack with [Log] or build your own IAspectHandler for metrics, retry, cache, auth.

Learn more

Opt-in per file. TypeScript-inspired utilities and helpers you reach for when you want them — no framework, no configuration.

Core

Shared attributes: relationships ([OneToMany], [OneToOne], [Entity]) and TypeScript-style utility types ([PartialFrom], [PickFrom], [OmitFrom]) plus JS-style [Destructurable].

Learn more

Validation

[ZRequired], [ZEmail], [ZRange] — compile-time validation with Validate() method generated.

Learn more

Result

Functional Result<T> monad with Map/Bind/Match — error handling without exceptions.

Learn more

High buy-in, high payoff. Full-stack CRUD, query DSL, UI metadata. Best for solo projects and small teams; in larger teams start with Tier 1 and adopt Tier 3 only once everyone has seen what’s generated.

Dto — CRUD API

One attribute, full CRUD. [CrudApi] generates endpoints, DTOs, validation, and ProblemDetails responses.

Learn more

Query

Filter/sort DSL for REST APIs: filter=Level>25,Team.Name=Lakers&sort=-Level&select=Name,Level.

Learn more

EntityFramework

[GenerateCrudStores] on DbContext — auto-generates EfCrudStore implementations + DI registration.

Learn more

UI

Form + table metadata from attributes. Framework-agnostic JSON for Blazor, React, Vue.

Learn more