Open-source webmail client for MailKite — built with Next.js 15, shadcn/ui, and Tailwind v4.
Deploys to webmail.mailkite.dev on Cloudflare Workers via OpenNext.
This app has no backend. MailKite is the backend — all mail, read/unread, and tags live in the MailKite API, not here. Read
docs/webmail/architecture.mdbefore adding anything that needs to persist.
- Three-panel layout — sidebar, inbox list, message detail (resizable)
- Chat-style threading — messages displayed as conversation bubbles
- OAuth login — Google and GitHub sign-in via MailKite API
- Inline reply — compose replies without leaving the thread
- Dark-first — designed for dark mode with light theme support
- Mobile responsive — drawer overlay for detail view on small screens
npm install
npm run devOpen http://localhost:3000.
Copy .env.example to .env.local:
cp .env.example .env.localRequired:
NEXT_PUBLIC_API_URL— MailKite API base URLNEXT_PUBLIC_GOOGLE_CLIENT_ID— Google OAuth client IDNEXT_PUBLIC_GITHUB_CLIENT_ID— GitHub OAuth client ID
npm run deployRequires Cloudflare account with Workers paid plan and wrangler configured.
