← All projects
[01]

Moneysense

A value-investing platform that grades any stock across 9 pillars, works out what it’s really worth and explains the business in plain language.

Stack
Next.js · PostgreSQL · Prisma · OpenAI
Status
Live · 6,000+ investors
fig.01 · moneysense · tap to play
  1. 1 · Raw financials
↳ Raw financials settle into a company’s revenue by year, then a fair-value line is drawn across it. Point at a bar to inspect that year; click to load another stock.
01

The problem

Picking stocks well means digging through years of filings, ratios and valuation models: work most people never get round to. Moneysense does the digging: it grades a company on what matters, estimates what it’s actually worth, and explains the business in plain language, so anyone can invest with confidence.

02

What I built

01

9-pillar grades

Every company is graded A–F across 9 pillars (profitability, growth, financial health, management quality and more), so strengths and red flags show at a glance.

02

Intrinsic value

Fair value from five models side by side: Graham’s Formula, DCF, Dividend Discount, Peter Lynch and multiples.

03

AI business analysis

An AI deep dive into the business model, competitive advantages, risks and growth opportunities, generated in seconds.

03

How it works

Architecture of Moneysense, one row per user action.
  1. Sign in: the frontend sends “Credentials”; the backend does: Better Auth; it talks to PostgreSQL (“Users & sessions”); the user gets back “Session”.
  2. Stock page: the frontend sends “Ticker”; the backend does: Fetch financials, then Grade 9 pillars · value it; it talks to Yahoo Finance (“Request”, gets back “Financials”); the user gets back “Grades & fair value”.
  3. AI business analysis: the frontend sends “Company”; the backend does: Vercel AI SDK; it talks to OpenAI (“Prompt”, gets back “Analysis”); the user gets back “Report”.
  4. Ratings & notes: the frontend sends “Save rating”; the backend does: Server action · Prisma; it talks to PostgreSQL (“Read / write”); the user gets back “Your list”.
  5. Upgrade to PRO: the frontend sends “Checkout”; the backend does: Better Auth · Stripe plugin; it talks to Stripe (“Subscription”, gets back “Webhook”); the user gets back “PRO unlocked”.
04

Outcome

6,000+investors use it · 4.8/5 rating
70K+stocks analysed