Newsletter Arşiv Önerici (Kişisel)
Substack/Beehiiv abone listesini yüklersin, AI her aboneye okuma geçmişine göre arşivden 3 yazı öneren e-posta yollar.
Kimin derdi bu?
Gerçek bir insan, gerçek bir acı. Kafanda canlandır.
- Kim
- Substack/Beehiiv yazarları (1k-50k abone) — eski yazılar arşivde kayboluyor
- Canı yanan yer
- Yeni abone sadece son yazıyı görüyor; eski içerikten para kazanmıyor; engagement düşük
- Şu an nasıl yapıyor
- Manuel digest e-postası ayda 1, jenerik linkler
6 saate sığar mı?
Bootcamp modunda sıkıştırılmış senaryo.
M — 8-10 saat. RAG embedding + per-user ranking + e-posta gönderim.
Ne ile inşa edeceksin?
Sıfırdan yazmayacaksın — bu parçaları birleştireceksin.
Hangi parçalar?
Her parça ayrı bir commit. Sırayla yakala.
- 1Newsletter arşiv import (RSS / API)
- 2Yazı embedding'leri
- 3Abone aktivite import (open/click)
- 4Per-user arşiv ranking
- 5Kişiselleştirilmiş digest e-posta
- 6Open/click tracking + iyileştirme
Piyasada kimler var?
Rakip değil, referans. Sen onlardan küçük, hızlı ve yakın olacaksın.
Neden evet, neden hayır?
Kısa bir gerçeklik testi.
Net retention metric (open rate ↑), dar niche, kreatör para kazanmasıyla doğrudan ilişkili
Substack API kapalı (RSS yetiyor); küçük TAM
Para nereden gelir?
Bir çerçeve, değil kesin plan. İlk 100 kullanıcıya odaklan.
- Fiyat
- $25/ay (1k abone), $79/ay (10k abone)
- Hedef ARR
- 100 kullanıcı × $39 = $3.9k MRR
- Model
- Subscription
Claude Code'a ver
Aşağıdaki prompt'u olduğu gibi kopyala, Claude Code'a yapıştır. Stack, veri modeli, 6 saatlik inşa sırası ve başarı kriterleri içinde.
# Newsletter Arşiv Önerici **Ne inşa ediyoruz:** Newsletter arşivini import edip, abonenin geçmiş okumalarına göre kişiselleştirilmiş 3 yazı öneren haftalık digest e-postası gönderen araç. **Kullanıcının işi (JTBD):** 200 yazılık arşivim var ve yeni abone sadece son 3'ü okuyor. Her aboneye benim seçilmiş eski 3 yazımı haftalık göndermek istiyorum, böylece eski içerik canlı kalsın. --- ## Stack - Next.js 15 App Router - Tailwind + shadcn/ui - Supabase Postgres + pgvector - Claude Sonnet 4.6, voyage-3 - Resend (transactional) - Vercel cron jobs - Deploy: Vercel ## Veri modeli ```sql create extension if not exists vector; create table newsletters ( id uuid primary key default gen_random_uuid(), user_id uuid references auth.users not null, name text, rss_url text ); create table posts ( id uuid primary key default gen_random_uuid(), newsletter_id uuid references newsletters on delete cascade, external_id text unique, title text, url text, content text, embedding vector(1024), published_at timestamptz ); create table subscribers ( id uuid primary key default gen_random_uuid(), newsletter_id uuid references newsletters, email text, joined_at timestamptz, segment text ); create table activities ( id uuid primary key default gen_random_uuid(), subscriber_id uuid references subscribers on delete cascade, post_id uuid references posts, action text, occurred_at timestamptz default now() ); create table digests ( id uuid primary key default gen_random_uuid(), subscriber_id uuid references subscribers, posts_picked uuid[], sent_at timestamptz, opened boolean default false ); ``` ## Ana akışlar 1. Newsletter RSS bağla, arşivi çek + embed. 2. Abone CSV import (e-posta + ne okuduğu). 3. Haftalık cron: her abone için en alakalı 3 eski yazı seç (cosine + recency penalty). 4. Claude per-user e-posta intro yazsın. 5. Resend ile gönder + open/click track. ## 6 saatlik inşa sırası - 0:00–1:00 — Scaffold + auth + newsletter setup - 1:00–2:00 — RSS pull + embedding pipeline - 2:00–3:00 — Abone import + activity CSV - 3:00–4:30 — Per-user ranking + Claude intro - 4:30–5:30 — Resend e-posta + tracking - 5:30–6:00 — Vercel deploy + test gönderim ## Başarı kriteri - [ ] 50 yazı ve 100 abone import edildi - [ ] Test gönderim 1 aboneye gitti - [ ] Önerilen yazılar abonenin okumadığı 3 farklı yazı - [ ] Open/click track çalışıyor - [ ] Mobil e-posta render düzgün ## Dikkat - Resend ücretsiz katmanı 100/gün — büyüyen liste pahalı, fiyatlama tabanı buradan. - Substack RSS açık ama tam içerik genelde yok — özet yeter. - "Bu içeriği daha önce gördüm" gizleme şart. - GDPR: abone listesi user'a ait, sil yoksa sil özelliği koy.
Bu sana uymadı mı?
Hepsini görThumbnail yüklüyorsun, AI 3 varyasyon üretiyor + YouTube başarı paternlerine göre tıklanma oranı tahmini veriyor.
Küçük markalar için micro-influencer bulma + kontak + kampanya takip aracı (Instagram/TikTok odaklı).
Uzun video yükle, AI 10 farklı viral-ready short (TikTok/Reels/Shorts) kesiyor, caption + hashtag de hazır.