Notes from building a metadata-driven framework
Deep dives on Angular, .NET, metadata, RAG over codebases, workflow engines and the architectural choices behind WUIC. Long form, no fluff.
The chatbot's toolbox: the actions an LLM can apply to your app
Our in-product chatbot doesn't just answer questions — it proposes concrete changes to a running app through a typed toolbox, the same function-calling idea behind MCP. Toolbar buttons, validations, computed columns, conditional styles, even SQL fragments. Every proposal is a chip with an Apply button. This post walks the catalogue, one tool at a time, with the prompt that triggers each.
The architecture of an in-product RAG chatbot: from your prompt to the answer
A closed-source codebase chatbot that cites real source files: hybrid BM25 + bge-m3 retrieval, a LoRA-fine-tuned cross-encoder, Claude for synthesis — and a serving stack that moved off Python onto native .NET/ONNX. This post follows a single prompt end-to-end, from the moment you hit send to the cited answer, and explains the architectural choices behind each step.
CrmApp: a free CRM you can install in 10 minutes (and own forever)
CrmApp is the first of three free apps we ship on top of WUIC. Customer pipeline, opportunities, activities, role-based dashboards — no subscription, no per-seat fee, no data going to a third-party cloud. The download is a single ZIP. This post covers what's inside, who it's for, and the licensing rule (spoiler: free unless you recompile).
FatturazioneElettronica: a free Italian e-invoicing app with SDI integration
FatturazioneElettronica is a self-hosted FatturaPA / SDI integration: invoice editor, CADES-BES signature, XSD validation, four interchangeable SDI providers (DirectPec free, ArubaPec / FatturePec / PecIt commercial), conservation pipeline. Free distribution, MIT-friendly bundling rule, runs on your own SQL Server.
FlottaMezzi: a free fleet management app with geolocation, maintenance deadlines and cost rollups
FlottaMezzi is the third free app on WUIC: anagrafica mezzi, manutenzioni programmate con alert scadenze (bollo, revisione, assicurazione, tagliando), tracking geolocation via OBD/GPS feed, aggregazione costi per mezzo / driver / periodo, reportistica. Free as-shipped, runs on your own SQL Server.
Building reports without code: SQL view to .mrt to printed PDF in one route
WUIC's report engine binds a Stimulsoft .mrt file to a metadata route. Write a SQL view, scaffold it, point the .mrt at the route, drop the route into a menu — the report runs in the embedded viewer with the right data, right filters, and right permissions. No per-report TypeScript, no per-report backend code, no separate auth layer.
The dashboard designer: drag-and-drop that writes JSON metadata, not Angular code
Most low-code dashboards are exported to a proprietary binary or compiled to a per-tenant Angular bundle. WUIC ships an in-browser designer (palette + canvas + property panel) that writes a single JSON column (dom_board.boardcontent) plus per-board CSS sheets (dom_board_sheet) and the runtime renders it without recompile. This post explains the designer UX, the palette of components, the CSS attachment story, and the one trade-off we made about Angular markup inside the JSON.
Mobile-first auto-layout with zero config: how WUIC reflows enterprise tables on a phone
Most enterprise UIs are desktop-only. WUIC's list-grid and edit-form switch to mobile layouts automatically below 768px — table becomes card stack, two-column form becomes vertical flex, no per-screen template, no per-column responsive flag. This post explains the exact split between runtime swap (TS) and CSS-only fallback (SCSS) and why we picked that split.
WUIC on Linux, natively: one binary, four DBMS choices, one shell installer
WUIC ships a native Linux deploy on Ubuntu 22.04: .NET 10 + Kestrel + systemd + nginx, with provider drop-in for SQL Server, MySQL, PostgreSQL and Oracle. Same WuicCore.dll on Windows/IIS and Linux — for non-MSSQL DBMSs the runtime loads one satellite provider DLL alongside it. This post walks through the install one-liner, what each DBMS variant actually does on Linux, and what's still Windows-only.
From SQL table to working CRUD form in 30 seconds: a metadata-driven scaffolding approach
How WUIC turns a CREATE TABLE statement into a complete CRUD UI — list, edit form, validation, lookup widgets — without writing a single TypeScript file. The actual scaffolding endpoint, what it inspects, and what it skips.
Why we built a metadata-driven Angular framework instead of using Retool
Honest origin story behind WUIC: the moment Retool stopped scaling for our team, the tradeoffs we weighed, and what we did instead.