Project 5 of ~34

🎲 Adulting Odyssey — Architecture

Gamified life skills education. SvelteKit + Deno + Supabase. AI generates personalized life roadmaps and customizes templates. Mac Mini for content AI.

🛠️ Tech Stack

ComponentTechnologyWhy
FrontendSvelteKitQuest UI with decision tree engine, progress tracking, mobile-first
BackendDeno 2 + OakAPI for user progress, template generation, sponsor integration
DatabaseSupabase (PostgreSQL)User profiles, quest progress, template storage
AI ContentOllama (Mac Mini)Personalized life roadmap generation, template customization per user situation
Template EnginePuppeteer (PDF) + DocassembleFillable PDF forms and customized documents
PaymentsStripeSubscriptions, school district billing
EmailResendOnboarding, reminder emails, sponsor offers

🗄️ Data Model

users
iduuid
profile_jsonjsonb{age, income, state, housing_situation, dependents}
xp_totalinteger
points_balanceintegerRedeemable for sponsor rewards
life_roadmap_iduuid (FK)Generated personalized roadmap
quests
iduuid
slugvarchar(100)taxes-101, apartment-hunt
titlevarchar(255)Display name
categoryenum('taxes','housing','insurance','credit','investing','car')
content_mdtextNarrative content + decision tree JSON
xp_rewardinteger
points_rewardinteger
templatesjsonb[{name, url, fields_to_fill}]
prerequisite_quest_idsuuid[]
quest_progress
iduuid
user_iduuid (FK)
quest_iduuid (FK)
statusenum('not_started','in_progress','completed')
choices_jsonjsonbDecision tree choices made
scoreinteger0–100 "did you survive" assessment
completed_attimestamp
life_roadmaps
iduuid
user_iduuid (FK)
milestones_jsonjsonb[{title, due_date, quest_id, status}]
generated_attimestamp
regenerated_attimestamp

🤖 AI Content Generation

Life Roadmap Generation
On signup, agent asks 5 questions (age, income, state, housing, goals). Ollama Mistral 7B on Mac Mini generates a personalized milestone timeline. Updates when profile changes.
Template Personalization
Templates (lease red flags, W-4, etc.) are customized with user's specific data. "Your state: CA. Income: $52,000. Filing status: Single." Agent fills the relevant fields automatically.
Sponsor Match
Based on user profile + quest completion, agent recommends relevant sponsor products. Revenue tracking per click/conversion per sponsor.

Requirements  |  All Projects  |  Presentation →