Long-standing open-source webmail client (IMAP-based).
MailKite ships @mailkite/mail — an MIT-licensed, embeddable webmail component for React, if you'd rather not run PHP.
A minimal, copy-paste starter. Swap in your own domain and API key.
import { verifyWebhook } from "@mailkite/client";
// MailKite POSTs every inbound email at your domain as JSON.
// Point a route at this handler in the MailKite dashboard.
export default async function handler(req: Request) {
const raw = await req.text();
const sig = req.headers.get("x-mailkite-signature") ?? "";
// Reject anything not signed by your webhook secret
const ok = await verifyWebhook(sig, raw, process.env.MK_WEBHOOK_SECRET!);
if (!ok) return new Response("bad signature", { status: 401 });
const email = JSON.parse(raw);
// Route into Roundcube: open a ticket, create a task, store a record
await routeIntoName(email); // email.from · email.subject · email.text
return new Response(JSON.stringify({ ok: true }));
} Roundcube is a widely-deployed open-source webmail client written in PHP that reads IMAP mailboxes. It's the classic choice for teams self-hosting mail who need a familiar, no-frills webmail UI for reading and sending. Mature and stable, though the UX predates modern web apps.
Open source (self-host)
Yes — Roundcube is open source (GPL) and self-hosted; you run it against your own IMAP server.
Roundcube is a self-hosted PHP/IMAP client. MailKite's @mailkite/mail is an MIT React component you embed, backed by the MailKite API.
Point a domain, drop in a webhook URL, and send your first email in minutes. Unlimited domains, no credit card.