# How to Vibe Code Your Own HEY (and Stop Paying for It)

> A delightfully fresh take on email + calendar

- Site: https://hey.com
- Category: Email & Productivity
- Verdict: **Don't bother** (15/100 vibecodeable)
- Estimated effort: 3-6 months of full-time infrastructure work

## Verdict

Keep paying for HEY; you cannot realistically clone a functioning, production-ready email service as a solo developer due to deliverability hurdles and MTA infrastructure.

While the frontend UI (Screener, Imbox, Feed) can be mocked up in a weekend using Next.js or Ruby on Rails, the actual backend plumbing required to act as a secure, globally trusted mail server (managing Postfix, IMAP, TLS handshakes, reverse DNS, and fighting blacklists on major inbox providers like Gmail and Outlook) is a massive operational nightmare. An AI coding agent can generate the UI views and SQLite schemas, but it cannot prevent your home or cloud server IP from landing on spam blacklists within 48 hours of launch. Paying $99/year is infinitely cheaper than managing email server infrastructure.

### What you can't replicate

- Global email deliverability and trusted IP reputation on consumer inbox blocklists
- The @hey.com domain name and brand equity
- Seamless multi-platform native desktop and mobile clients with secure background sync

## What it does

An opinionated, privacy-focused email and calendar service designed to rethink traditional inbox paradigms with structured views like The Screener, Imbox, Feed, and Paper Trail.

### Core features

- The Screener (explicit sender approval workflow)
- The Imbox (curated high-priority inbox)
- The Feed (newsletter and long-read reader view)
- The Paper Trail (repository for transactional receipts)
- Productivity queues (Reply Later, Set Aside, Bubble Up)
- Integrated Calendar with daily journal notes
- HEY World blogging platform via email ingestion

## The business

### Pricing

- HEY for You (Personal): $99 per year
- HEY for Families: $179 per year
- HEY for Domains: $12 per user/mo

### Funding

$0 raised.

Founded 2020.
Team size: Under 50 (37signals).

## The hard parts

- Mail Transfer Agent (MTA) infrastructure and global DNS/deliverability (SPF, DKIM, DMARC)
- Inbound email ingestion pipeline (parsing raw MIME, attachments, and headers)
- Field-level database encryption architecture for at-work data introspection
- Cross-platform state synchronization without heavy client-side frameworks

## How to vibe code HEY

### Prerequisites

- Node.js (free): Runtime environment for building the web dashboard clone
- GitHub (free): Source code repository and deployment trigger
- Cloudflare (free): Hosting the web UI and database interface

### Recommended AI tools

- Claude Code: Best-in-class agentic coding tool for scaffolding full-stack CRUD interfaces and database schemas
- Cursor: AI code editor for fine-tuning layout components and complex UI states

### Stack

- Frontend: Next.js
- Backend: Next.js API routes
- Database: Turso
- Auth: better-auth
- Payments: None
- Other: Tailwind CSS, Resend

### Hosting

- Cloudflare (Hosting the Next.js personal email dashboard web application): $0/mo
- Turso (Serverless SQLite database for storing mocked emails, screener states, and user preferences): $0/mo

### Build guide

1. **Project Scaffolding and Database Schema** — Initialize a Next.js project with Tailwind CSS and configure Turso with better-auth to support a single-user personal email simulation environment.

```
Create a new Next.js project configured with TypeScript, Tailwind CSS, and App Router. Set up a Turso database client using SQLite and define a schema with tables for users, threads, messages, senders, and screener_status (enums: pending, approved, denied). Ensure the setup includes environment variable validation and clean folder structures.
```

2. **The Screener View Implementation** — Build the interface and backend logic for screening incoming senders before allowing them into the Imbox.

```
Build a dedicated 'Screener' view component in Next.js that lists incoming email senders with a 'Yes' or 'No' approval action. When a user clicks 'Yes', update the sender status to approved and route their existing messages to the Imbox. When 'No', deny them permanently. Style it to closely mimic a clean, minimalist card stack interface with keyboard shortcuts (Y/N).
```

3. **Curated Imbox and Feed Views** — Implement the core Imbox feed for approved emails and a separate Feed view for newsletters and long-reads.

```
Implement the 'Imbox' and 'Feed' views. The Imbox should display only messages from approved senders, categorized by new and previously seen. The Feed view should render newsletters in a scrollable, open-card format where multiple articles can be browsed sequentially without opening and closing individual views. Use server actions to handle message state changes like marking as read or archiving.
```

4. **Paper Trail and Workflow Queues** — Add dedicated repositories for transactional receipts and workflow queues such as Reply Later and Set Aside.

```
Create a 'Paper Trail' tab that automatically filters and groups transactional emails, receipts, and order confirmations into compact single-line summaries. Implement productivity queues for 'Reply Later' and 'Set Aside' with dedicated bottom-of-screen drawers and a 'Focus & Reply' mode that lets users step through replies sequentially.
```

5. **Integrated Calendar and Journal** — Build a modern calendar interface with original workflow conventions and a personal daily journal feature.

```
Build an integrated calendar module supporting day, week, and month views with a clean typographic layout. Add a 'Journal' tab allowing users to write daily private notes, meeting takeaways, and personal reflections tied directly to specific calendar days. Store journal entries in a dedicated SQLite table linked to the authenticated user.
```

### Cost vs paying

**Starting costs (one-time):**

- Domain name (optional, for personal testing): $12
- Total: $12 one-time

**Ongoing costs (monthly):**

- Cloudflare & Turso free tiers: $0
- Total: $0/mo

- Paying for the SaaS instead: $8.25/mo ($99/yr)
- Build time: 40-60 hours
- AI tool credits: $20 (Claude Pro)
- Break-even: Never (due to infrastructure limitations)

## Sources

- [HEY Official Website](https://hey.com)