Kindship‑Chat
A light‑weight, multi‑agent AI chat app
Tech Stack
Next.js 14 (App Router + Server Components)
TypeScript & React 18
Tailwind CSS v4
Supabase (PostgreSQL, Auth, Storage)
OpenAI Chat & Vision APIs
Main Features
Agents: Create, rename, or delete unlimited AI agents, each with its own system prompt and avatar.
Chat:
Realtime streaming replies
Upload and preview images inside the thread (OpenAI Vision)
Markdown + code highlighting + copy button
History stored in Postgres for instant reloads
Fully responsive layout (mobile → desktop)
Auth Email + Google OAuth via Supabase; JWT‑based session on the client.
Profile Users can change display name, bio, and photo; profile data lives in Supabase Storage.
Site Blog Static blog powered by MDX; Server Components pre‑render posts for speed and SEO.
Architecture at a Glance
Edge‑safe API routes wrap OpenAI calls—no keys in the browser.
Server Components fetch agents/chats once and stream them down; only small islands hydrate.
Zustand keeps UI state (modals, toasts, typing flag) tiny and predictable.
Supabase buckets store user‑uploaded images; signed URLs are inserted back into messages.
Kindship‑Chat focuses on the essentials—multi‑agent workspaces, rich yet fast chat, and simple user management—delivered with a modern, easily deployable stack.