Regira Engineering Blog

Notes on .NET, TypeScript & Vue

Patterns, gotchas and small wins from building the Regira packages and modules — entity pipelines, editorial front-ends and everything between.

16 articles
Data & EF Core / Architecture

Filtering in Regira Entities: the basics

How ?brandId=1&hasIntervention=true becomes SQL: one typed object that names your filters, one small builder that translates them - the foundation of the read pipeline, with a runnable sample to curl along.

Pinned 6 min read
Data & EF Core / Architecture

Querying hierarchies at any depth: recursive SQL functions meet an in-memory TreeList

Three escalating strategies for self-referencing entities in EF Core — from ParentId filters to recursive CTE table-valued functions composed inside your query pipeline.

Pinned 18 min read
.NET / Architecture

Game of Thrones as a data model: parties, typed relationships, and a TreeList of alliances

Using a domain everyone knows to stress-test a stakeholder model — people, houses, sworn banners and shifting alliances — and rendering the result as a navigable tree.

Pinned 33 min read
.NET / Tips & Tricks

From flat list to tree in one line of C#

A quick look at turning a flat collection with parent references into a navigable hierarchy, without writing recursion yourself.

4 min read
TypeScript / Vue

From SQL to screen: rendering .NET tree data in a Vue SPA

The follow-up to our recursive-CTE deep dive: rebuilding server-side hierarchies client-side with a TypeScript TreeList, a useTree composable, and drag-and-drop re-parenting.

7 min read
Vue / Architecture

Anatomy of a list view: the overview composables in depth

What it actually takes to build a correct, URL-driven, paged list view in Vue 3 — dissecting useOverviewCore, useSearchView, useListView and useRouteOverview from the Regira entities client.

12 min read
Vue / Architecture

Forms that survive reality: useForm in depth

Cancel that works twice, saves that don't lie, deletes that can be refused, and soft-deleted rows you can actually restore — dissecting the useForm composable from the Regira entities client.

10 min read
.NET / Tooling

One interface, any storage: building a configurable file-sync tool in .NET

A complete console tool that copies files between local disks, network shares and Azure Blob Storage — driven entirely by appsettings.json, built on a single storage abstraction.

10 min read
Data & EF Core / Architecture

Row-level multi-tenancy in ASP.NET Core: one marker, one filter, one primer

How to make tenant isolation a property of the data layer instead of a discipline problem — with a real multi-tenant fleet-management API as the case study.

11 min read
Data & EF Core / Architecture

AND, OR and the endpoints

The full read surface a registration exposes, why counts live next to pages, and how POSTing an array of SearchObjects gives OR a principled home - closing out the filtering series.

3 min read
Data & EF Core / Architecture

Free-text search that hits the index

Why WHERE Title LIKE '%josé%' fails four ways, and how normalizing at save time - one attribute, one helper - gives you a search box that matches 'mercedes' to 'Mercedes-Benz' on a plain indexed column.

3 min read
Data & EF Core / Architecture

Archiving: delete without losing data

One interface turns DELETE into soft delete: archived rows vanish from every query, stay reachable on purpose via ?archived=, and come back with a plain save - every step runnable against the sample API.

3 min read