source-backed business administration

Prototype

Business administration, put in order.

Rândui turns a Romanian administrative procedure into a versioned service on one runtime: forms, rules, documents, official sources, human approvals, messages, and payments, none of them hardcoded into a wizard. Company formation is the first service; a registered-office change is the second. The name is the Romanian verb for setting things in a useful, tracked order. It replaced the working name Temei, which still names the repository and the package scope, and it is approved as a product direction, not yet cleared as a trademark. The platform is built to its whole specification and runs locally; the public launch waits on trademark, legal, and live-provider gates.

I designed the platform and its boundaries: the Service Pack model, the Company Passport and its source rules, the connector ports, the security posture, and the identity, and I led the build to a full-product bar rather than an MVP.

stagebuilt to spec; launch gated
nameRândui, ex-Temei; not trademark-cleared
servicesformation.srl · company.address-change
connectorsANAF public · BNR FX · EU VIES · mock

Project images

Public site, local candidateThe public page in the local build: the tagline, four trust chips, and a sample case with its next step. A synthetic Playwright fixture, not a live site.
Identity foundationThe design-sandbox foundation page: the four-colour palette, Romanian and English type specimens with Roboto Mono for case IDs, and the mark from 16 to 64 px.
Public site at 390 pxThe same page on a phone: one dominant action, the rest of the hero stacked.
Rânduiprototype · built locally, launch gated
service packforms · rules · documents
company passportfacts · provenance · freshness
caseworkclient · operator · expert
evidencesources · versions · approvals
Service runtime mapThe reusable layers behind a service, not a live customer screen.

What we are building

Versioned Service Packs

A service is a manifest: eligibility, data and UI schemas, required documents, deterministic rules, workflow, templates, messages, pricing, source references, and tests, with a release hash. The compiler refuses a required field without a reason and source, a blocking rule without a test, and a template variable without a mapping. Two packs sit in the catalogue today.

Company Passport, implemented

Each company fact carries its source, retrieval and effective dates, confidence, and confirmation state. Confirmation is server-owned from a durable source observation with a versioned hash. Official, client-claimed, and case-accepted values stay separate, and a fact cannot become verified while its source is stale, partial, or in conflict.

Connectors behind ports

Service Packs ask for a capability, never a vendor. Four packages exist: ANAF public registers, BNR exchange rates, EU VIES, and a mock. Fixtures are the deterministic baseline; the live ANAF and BNR adapters exist but have no authorised real-endpoint evidence yet, so they are not active. A connector is not active because a URL exists.

Two surfaces, one case

A client web app in Romanian and English and an invite-only operator workbench work the same case: intake, documents, a fail-closed rules DSL, operator review, audit, and a jobs plane with an outbox. Telegram is bound as the first external channel. The AI gateway explains fields and drafts summaries; it does not choose a fiscal regime, approve a beneficial owner, or file anything.

How it works

A locked stack, and what actually runs on it

Node 24, pnpm, Turborepo, NestJS on Fastify, PostgreSQL with Drizzle, Temporal, BullMQ, Better Auth and Next.js. A modular monolith of 30 workspace packages and six apps: client web, API, operator admin, marketing, design sandbox, and docs viewer. The Temporal host runs; product-level multi-step workflows are not started, so the case lifecycle is a PostgreSQL state machine for now. 277 unit test files and 10 Playwright specs sit behind a local verify gate.

Tenancy and evidence in the database

38 migrations. The first row-level-security tranche protects company and company_fact with indexed policies, a non-owner migrator role, and audited, expiring break-glass access; the other tenant tables are still application-enforced until later tranches. Operators use MFA, there is no public operator sign-up, and the audit trail carries no personal payloads.

Automation stays accountable

A critical rule cannot go active without an accepted source and a human approval; source changes become candidate requirements, never auto-published rules. The AI gateway has offline evals and a kill switch, and live model keys, live connector evidence, payment keys, and the legal packs are separate human gates. The platform does not file on official portals by scraping, and it does not claim to be an authority.