Protocol clarity. Connected supply. Accountable decisions.
Architecture & agility

Separate responsibilities.
Connected decisions.

The operational RTSM uses a modern .NET service architecture with PostgreSQL persistence. This public website is a separate ASP.NET Core Razor Pages application on .NET 10—with no trial-database connection.

The operational technical blueprint

Four layers.
One accountable flow.

01

Experience layer · Blazor

Account/study selection, role-aware navigation, design editors, site workflows, physical verification and reporting views. The interface provides feedback, while the API remains authoritative.

Rtsm.Web
02

Application boundary · ASP.NET Core API

Authenticated requests carry identity, permissions, Account, study and site context. Server-side checks protect tenant isolation, treatment visibility and action-specific authorization.

Rtsm.Api
03

Domain services & workflow rules

Randomization, dispensing, packaging, quantity movement, resupply, document lifecycle and audit handling coordinate state transitions. Database transactions protect tightly coupled updates.

Services
04

Persistence · EF Core + PostgreSQL 17

Relational records link Accounts, studies, sites, products, subjects, kits, balances, shipments and document history. Persistent key volumes are separate from application binaries.

Database
Records with explicit relationships

A schema built around
operational identity.

Distinct identifiers prevent a subject number, randomization ID, physical kit label and lot number from being mistaken for the same record.

Organization & access

Account → allocated studies → study sites/depots. Users and roles define permitted actions, site restrictions and blinding context.

Design & assignment

Study → products, arms, factors, cohorts and visits. Master rows retain randomization IDs and assignment links; dummy previews remain separate.

Supply & accountability

Product → lot → kit identity. Location/status balances represent quantity movements; shipment items and dispensation history connect the transfer or issuance.

Evidence & retention

Account document → retained versions → events/signature context. Audit events record actor, action, time and integrity-chain metadata.

Flexibility without casual rewriting

Controlled agility
is a design decision.

Configuration-led study setup

Arms, factors, ratios, visit windows, cohorts and product quantities are configured in saved design records. Study-specific behavior is not represented as a promise that every protocol can run without engineering or qualification.

Preview and operational data remain separate

DUMMY generation captures review settings without populating assignment rows. Creating a master from reviewed settings is a new operation with design and assignment guards—not promotion of dummy records into live use.

State and transaction boundaries protect execution

Assignment locks master generation parameters. Dispensing resolves the current treatment and eligible stock before issuing all required products. Issued inventory cannot be allocated again while physical verification is pending.

Amendments preserve historical meaning

Live design changes require amendment context. Crossover affects the ordered future visit sequence without replacing the original treatment assignment. Historical treatment and completed-visit constraints are enforced.

Retention is a workflow, not a delete button

Account document revisions create retained version entries. Archive hides an inactive record from ordinary views without erasing its bytes or history. Restore is separately signed and audited.

Extension points require explicit qualification

External data exchange, federated identity, distributed key storage, multiple application nodes and high availability require deployment-specific work. Document and test each change rather than implying that a logical separation makes it qualified.

Two applications. Different responsibilities.

Learn here.
Operate in RTSM.

The Razor Pages website serves product information and reviewed help articles. The operational application owns authentication, trial records and clinical workflows.

WEB

ASP.NET Core Razor Pages / .NET 10

Server-rendered pages, a shared layout and a local XML knowledge catalog. Linux container hosting with preserved ASPX URLs; no participant-data processing.

RTSM

Modern .NET / Blazor / PostgreSQL

Operational web and API services remain independent. This website does not expose private API or database access.

Before external production hosting

Qualify HTTPS and proxy configuration, data residency, restricted administration, persistent keys, secrets management, encrypted backups, restoration, monitoring, retention and recovery objectives. A local HTTP demonstration is not the production baseline.

Read the deployment guide →
From understanding to action

A clear view of your next step.

Explore a workflow, understand its controls, and bring focused questions to your study team.