Next.js · TypeScript · Prisma · Fintech
FinRatio
A financial-analysis platform for credit and ratio calculations — OTP auth, protected calculators, AI-assisted insights, PDF reports.
1 min read
Draft written from the repo README — add screenshots and outcome metrics from the Week 0 content audit.
Spark
Credit assessment runs on a handful of ratios — DSCR, debt-to-equity — that get recomputed in ad-hoc spreadsheets with no history and no explanation. The idea: a focused tool that computes them properly, remembers every calculation, and explains what the numbers mean.
Shape
The product shape is a funnel: public landing page with a login-aware call to action, then an auth wall, then the calculators. Auth was designed deliberately — email OTP sign-in, JWT sessions in HTTP-only cookies — because a finance tool that's casual about auth isn't credible.
Build
Next.js 14 App Router + TypeScript + Tailwind, with Prisma over SQLite/Turso-compatible LibSQL. Every calculation is persisted through Prisma, so the dashboard shows history, not just answers. An AI analysis endpoint turns a raw ratio into a credit insight:
/auth → email OTP sign-up and sign-in
/dashboard → protected: history of every calculation
/calculator → DSCR and debt-equity workflows
/api/ai → AI-assisted credit insight from computed ratios
PDF generation utilities export any analysis as a report a human can hand to another human.
Launch
Deployed on Vercel at fin-ratio.vercel.app. A second iteration (FinrationFig) pushed the platform further: RBAC with SUPER_ADMIN/ADMIN/USER roles, per-user calculator feature gating, CSRF protection, rate-limited auth routes, and an admin panel.
Capture
The project became a two-generation story — the v1 proved the calculators and history model; the v2 rebuilt the access layer to production standards.
Reflection
Fintech UI is trust UI. Half the engineering here — OTP flows, cookie security, rate limits, RBAC — is invisible in a screenshot, and it's the half that makes the visible half believable.