Kredal Docs
Adr

ADR 0002 — Next.js 16 + Supabase stack

The chosen application stack and why.

  • Status: Accepted
  • Date: 2026-07-13

Context

Kredal needs server-side secret handling, row-level multi-tenant isolation, private file storage, and a UI matching an enterprise-fintech design system — built fast by a small team.

Decision

Use Next.js 16 (App Router, Server Actions) + TypeScript + Tailwind v4 + shadcn/ui on the front, and Supabase (Postgres, Auth, Storage) on the back.

Consequences

  • Positive: server actions keep all privileged logic server-side; Supabase RLS gives database-enforced tenancy; shadcn/Tailwind match the design tokens; one language (TS) across the stack.
  • Negative: Next.js 16 has breaking changes vs. training-data knowledge (see ADR 0006); Tailwind v4 is CSS-first (no JS config). Both are documented so future contributors are not surprised.

On this page