Work/Noctlore
Live · Stripe active

Noctlore

AI-powered dream analysis. Users log their dreams, Claude interprets them. Built and shipped solo.

TypeConsumer SaaS
StatusLive · Stripe active
Built bySolo
Timeline2025–present
StackNext.jsClaude APISupabaseStripeTypeScriptVercel
The Problem

Dream journaling apps existed but none actually analyzed the content. Users wanted more than a blank text field — they wanted to understand what their dreams meant. The gap: no one had shipped a clean AI layer on top of a journaling experience.

What I Built
Full-stack Next.js app with Supabase auth — email/password and OAuth
Dream entry flow — text input → prompt engineering → Claude Sonnet analysis
Subscription billing via Stripe — live keys, webhook handling, gated features
Dream history with pattern tracking across sessions
Deployed to Vercel with analytics baked in from day one
// dream-analysis.ts
// core analysis call
const response = await anthropic.messages.create({
model: 'claude-sonnet-4-6',
max_tokens: 1024,
messages: [{ role: 'user', content: prompt }]
});
// prompt includes entry + user history
Key Technical Decisions

Used server-side API calls only — the Anthropic key never touches the client. Supabase Row Level Security locks every query to the authenticated user. Stripe webhooks handle subscription state changes asynchronously so billing never blocks the UX.

Have a workflow that needs this kind of system?

If you want something built the same way — end to end, shipped, in production — let's talk.

Work with me →
SwiftDocProBodyTrack