Ikuti panduan ini dari nol sampai siap produksi: Cloudflare Worker, TiDB, Gmail SMTP, Telegram bot, Temporary Mail, paste anonim, upload file, API key, keamanan login, dan maintenance.
1. Ringkasan sistem
Wafix adalah aplikasi Cloudflare Worker untuk temporary mail publik, paste anonim, upload file publik, dashboard admin, recovery mailer, Gmail SMTP pool, Telegram bot, queue, API key, dan monitoring. Homepage bisa dipakai tanpa login, sedangkan dashboard admin dilindungi password dan optional Cloudflare Turnstile.
Public toolsTemp Mail, Paste Anonim, File Upload, statistik publik, dan inbox live.
Private consoleKelola Gmail, user Telegram, queue, API key, Temporary Mail admin, logs, dan settings.
RuntimeCloudflare Worker dengan Wrangler, variables, secrets, route, dan Email Routing.
StorageTiDB untuk data operasional, optional KV untuk counter atau cache publik.
2. Tutorial install dari nol
Tertarik membeli script ini?Klik tombol WhatsApp di bawah ini, pesan chat sudah otomatis disiapkan. Chat WhatsApp Admin
Install dependencyGunakan Node.js LTS. Dependency utama adalah Wrangler dan driver TiDB.
npm install
Login CloudflareWrangler perlu akses akun Cloudflare untuk dev, secret, dan deploy.
npx wrangler login
npx wrangler whoami
Siapkan TiDBBuat TiDB Serverless, salin host, user, password, dan database name. Schema dibuat otomatis saat Worker berjalan.
Set secretsSimpan nilai sensitif dengan Wrangler secret, bukan di git.
npx wrangler secret put DASHBOARD_PASSWORD
npx wrangler secret put TIDB_HOST
npx wrangler secret put TIDB_USER
npx wrangler secret put TIDB_PASSWORD
npx wrangler secret put TIDB_DATABASE
Test lokalJalankan Worker lokal dan buka URL preview dari Wrangler.
npm run dev
3. Konfigurasi environment wajib
Nilai non-rahasia bisa ditaruh di wrangler.toml, sedangkan password, token, dan credential harus memakai wrangler secret put.
TEMP_MAIL_DOMAINS daftar domain catch-all
TEMP_MAIL_DOMAIN domain default
TEMP_MAIL_ALIAS_LIMIT batas alias aktif
TEMP_MAIL_RETENTION_DAYS masa simpan email masuk
TEMP_MAIL_ALIAS_TTL_HOURS umur alias admin
Captcha login
TURNSTILE_ENABLED auto, 1, atau 0
TURNSTILE_SITE_KEY site key Cloudflare Turnstile
TURNSTILE_SECRET_KEY secret key Cloudflare Turnstile
Catatan pentingSite key dan secret key harus berasal dari widget Turnstile yang sama, dan domain Worker harus terdaftar di konfigurasi Cloudflare Turnstile.
4. Deploy ke Cloudflare Worker
Validasi syntaxPastikan semua file JS valid sebelum deploy.
npm run check
Deploy WorkerPublikasikan Worker ke akun Cloudflare.
npm run deploy
Custom domainTambahkan route/custom domain Worker dari dashboard Cloudflare jika ingin memakai domain sendiri.
Email RoutingArahkan catch-all domain email ke Worker agar temporary mail bisa menerima pesan.
Buka dashboard sekaliLogin ke /login, buka settings atau Temporary Mail agar schema dan konfigurasi awal dibuat.
5. Cara pakai fitur publik
Temporary Mail
Buka homepage, pilih Random untuk alamat otomatis atau Custom untuk nama sendiri. Setelah email dibuat, gunakan alamat aktif untuk menerima pesan. Inbox refresh otomatis dan tombol Refresh tersedia untuk cek manual.
Paste Anonim
Isi judul opsional dan teks paste, lalu tekan Buat link paste. Link bisa dibagikan tanpa login. Paste otomatis diperpanjang saat dibuka dan kedaluwarsa jika lama tidak diakses.
File Upload
Pilih atau drag file apa pun sampai 50 MB per file. Setelah upload selesai, salin link satu per satu atau semua link sekaligus. History tersimpan lokal di browser.
Praktik terbaikUntuk testing OTP, buat satu inbox khusus per kebutuhan agar email mudah dilacak dan dibersihkan.
6. Cara pakai dashboard admin
Single sendKirim recovery email ke satu nomor dengan Gmail aktif.
Batch sendMasukkan banyak nomor, sistem membuat queue dan mengirim bertahap.
Temporary Mail StudioBuat alias admin random/custom, lihat inbox, buat API key, dan kelola alias.
SettingsAtur SMTP, domain temp mail, quota, API, SEO, retention, dan fitur publik.
UsersMonitor user Telegram, quota harian, limit Gmail, block/unblock, dan cleanup.
LogsLihat hasil pengiriman, error, reply, dan event Temporary Mail.
7. API Temporary Mail
Buat API key dari dashboard Temporary Mail. Gunakan header Authorization Bearer untuk semua endpoint API v1.
Buat alias random
POST /api/v1/temp-mail/aliases
Authorization: Bearer tm_xxx
Content-Type: application/json
{"random":true,"domain":"diama.me"}
Buat alias custom
POST /api/v1/temp-mail/aliases
Authorization: Bearer tm_xxx
Content-Type: application/json
{"random":false,"local":"kode-login","domain":"diama.me"}
Baca inbox
GET /api/v1/temp-mail/messages?email=kode-login@diama.me&limit=10
Authorization: Bearer tm_xxx
8. Troubleshooting
Captcha error terusPastikan script Turnstile tidak diblokir, site key dan secret cocok, domain terdaftar, lalu refresh halaman login.
Email tidak masukPeriksa Cloudflare Email Routing, domain catch-all, DNS MX, dan log event Temporary Mail.
Database errorCek secret TiDB, endpoint serverless, dan deploy ulang setelah konfigurasi benar.
Gmail gagal loginGunakan App Password 16 digit, bukan password Gmail biasa. Pastikan 2FA aktif.
Upload tidak aktifCek PUBLIC_UPLOAD_ENABLED dan provider yang didukung.
Dashboard redirect loginSession habis atau cookie terhapus. Login ulang dari /login.
9. Maintenance produksi
Update sourceTarik perubahan terbaru, check, lalu deploy.
git pull
npm install
npm run check
npm run deploy
Rotasi secretGanti password dashboard, API key, dan secret sensitif berkala lewat Wrangler.
Monitor logPakai Wrangler tail untuk melihat error runtime setelah deploy.
npx wrangler tail
Backup konfigurasiSimpan daftar env/secrets, domain, dan credential Gmail di tempat aman.