Home
Under the hood

Tech stack

How UP Journal Club is built. Every layer, from the pages you click to the model that appraises each paper.

Next.js 15 + React 19

Application framework

The whole experience runs on the Next.js App Router with React 19 server components and TypeScript end to end. Pages render on the server for speed, then hydrate into the interactive quests, players, and dashboards you use.

App RouterReact Server ComponentsTypeScript

Tailwind CSS

Design system

Every surface is styled with Tailwind and a small set of design tokens, so the light and dark themes, the glassy cards, and the gradients all stay consistent from one screen to the next.

Utility CSSTheme tokensDark and light modes

Supabase

Database and authentication

A managed Postgres database holds papers, appraisals, points, and badges. Supabase Auth handles the email single sign-on, and row-level security policies make sure people only ever see and change what their role allows.

PostgresAuth (email SSO)Row-level security

Claude by Anthropic

The Appraisal Engine

The Appraisal Engine is powered by Claude through the official Anthropic SDK. Claude reads each paper and returns a structured critical appraisal through a defined tool schema, which is what turns a published study into a guided, competency-based quest.

Anthropic SDKclaude-sonnet-4-6Structured tool output

Put together, these pieces let UP Journal Club stay fast, secure, and genuinely interactive, while the heavy lifting of reading and appraising research is handled by a frontier language model rather than a static template.