Skip to content
SaaS product demonstration / 03

Relay.

A product journey before a platform. Workspaces, first-run guidance, and one core request workflow.

TECHNICAL DEMONSTRATIONNext.js / React / TypeScriptExplore the interface ↓

Technical demonstration — not a client case study. Sample data only.

01 / THE JOURNEY

From first run to core action.

Select a stage to understand the journey, then try the controls in the working interface below.

Select workspace

Switch between two sample workspaces. Boards and checklists stay separate in this browser session.

Try it in the interface ↓
02 / THE INTERFACE

Explore the actual slice.

All changes stay in browser memory. Reload to reset the examples.

Relay

Multi-tenant slice · sample tenants

Acme Ops

Starter

Onboarding checklist

Starter plan: illustrative export restriction.

Inbox

Active

Done

Click a card to advance columns. Tenant switch and plan gate are illustrative UI — not a live billing system.

03 / THE BRIEF

A specific problem. A clear boundary.

Founders ask for “a SaaS” before the core journey is clear. Multi-tenant accounts, plans, and admin tools arrive without an MVP boundary.

Demonstrate product architecture decisions buyers can discuss — tenancy boundaries, plan gates, and onboarding — as an honest demo, not a production multi-tenant platform claim.

What you can inspect

  • Two illustrative workspaces with separate local state
  • Plan labels and an illustrative export restriction
  • Interactive onboarding checklist
  • Request board with forward status transitions
04 / THE ENGINEERING

Open up the system.

Expand each layer to inspect the choices and limits. No measured performance or client outcomes are claimed.

Workspace selection in React state

Sample data lives in React state. Reloading resets it; no persistence is claimed.

01 / Workspace selection in React state

Sample data lives in React state. Reloading resets it; no persistence is claimed.

02 / Separate local boards and checklists per workspace

Selections, filters, and transitions update the interface in the browser, without product API requests.

03 / Plan-dependent messaging; export is not implemented

Roles or plans change the interface only. A real product would need server-enforced access checks.

04 / No authentication, database, billing, or backend isolation

Authentication, durable storage, and integrations are outside this slice. Those layers would be designed around a real project’s requirements.

ReactTypeScriptLocal React stateCSS
05 / POSSIBLE NEXT STEPS

From demonstration to business product.

A real product could add authentication, server-enforced access, a database, and billing. These capabilities are not implemented here; their design would depend on the product and its constraints.

YOUR NEXT PROJECT

Discuss your SaaS project

Let’s discuss the scope ↗
SaaS product demonstration →