Pemecahan masalah
Masalah lokal dan produksi umum dengan TurboJet.
Variabel lingkungan dari .env tidak dimuat
Jalankan pnpm dev dari akar repositori (tempat pnpm-workspace.yaml berada), bukan dari dalam folder app.
Script root memakai dotenv-cli untuk memuat variabel dari file .env di
akar (pnpm dev → dotenv -- turbo dev). Utamakan .env sebagai file
utama; Turbo juga mencantumkan .env.local di globalDependencies jika
Anda memakainya.
Pastikan juga variabel tercantum di array globalEnv di turbo.json. Hanya dengan itu Turbo meneruskannya ke task yang membutuhkan.
{
"globalEnv": ["DATABASE_URL", "RESEND_KEY", "NEXT_PUBLIC_MARKETING_URL"]
}Referensi kunci lengkap: Environment.
Bagaimana memakai debugger di VS Code?
Tambahkan konfigurasi ke .vscode/launch.json. Arahkan cwd ke marketing (host API di checkout ini) dan envFile ke .env root:
{
"version": "0.2.0",
"configurations": [
{
"type": "node",
"request": "launch",
"name": "Marketing DEBUG",
"runtimeExecutable": "pnpm",
"runtimeArgs": ["run", "dev"],
"restart": true,
"console": "integratedTerminal",
"cwd": "${workspaceFolder}/apps/marketing",
"envFile": "${workspaceFolder}/.env"
}
]
}Untuk pnpm dev monorepo dari root, setel cwd ke ${workspaceFolder}.
Perubahan tema Tailwind tidak diterapkan
Di monorepo, restart server development setelah mengubah token tema. Jika masih gagal, simpan globals.css app dan hard-refresh browser.
Aplikasi lambat di production
Penyebab umum adalah latensi antara app (atau serverless function) dan PostgreSQL. Deploy app ke region yang dekat dengan database (Neon, Supabase, Railway, dll.). Di Vercel, setel region Functions agar cocok dengan region database di pengaturan proyek.
Saya menyetel SMTP_HOST tetapi email tetap ke Resend
Diharapkan. sendViaSmtp ada tetapi cabang SMTP di sendEmail di-comment, jadi pengiriman selalu memakai Resend. Lihat Mailpit.