siinghd/duet

Two-person compatibility quiz with personality scoring and AI relationship insights

★ 0Forks 0JavaScriptGitHub ↗Compare

README

duet

Two-person compatibility quiz. Person A takes it, sends a link to Person B, both see scored results with AI-generated insights when B is done.

What it does

  • Fixed question set with personality scoring across multiple traits
  • Person A submits answers → server returns a session ID + personality summary
  • Person B opens the session link, submits answers → server scores compatibility, generates AI insights, and stores everything
  • /api/result/:id re-fetches a completed pairing
  • Per-IP rate limit (20 starts/joins per hour)
  • AI insight generation is best-effort — failures don't block the result

Stack

Bun's built-in Bun.serve (no framework), SQLite via lib/db.js, scoring logic in lib/scoring.js, AI calls in lib/ai.js. Static frontend in public/.

Run it

bun install
bun run start   # serves on :3500 (PORT env overrides)

Notes

  • The AI insights feature in lib/ai.js likely expects an LLM API key — check that file for the env var name before deploying with insights enabled.
  • SQLite at data/duet.db is runtime data, gitignored.

Contributors

siinghd

Issues