Aplikasi email sumber terbuka untuk mencapai kotak masuk nol dengan cepat.
Situs Web · Perselisihan · Masalah · Kanban
Inbox Zero adalah aplikasi email sumber terbuka yang bertujuan membantu Anda mencapai inbox zero dengan cepat dengan bantuan AI.
Untuk meminta fitur, buka masalah GitHub. Jika Anda tidak memiliki akun GitHub, Anda dapat meminta fitur di sini. Atau bergabunglah dengan Perselisihan kami.
Kami memiliki Kanban publik yang tersedia di sini. Bergabunglah dengan Discord kami untuk mendiskusikan tugas dan memeriksa apa yang sedang dikerjakan.
Berikut video tentang cara menyiapkan proyek. Ini mencakup langkah-langkah yang sama yang disebutkan dalam dokumen ini. Namun membahas lebih detail tentang penyiapan layanan eksternal.
Layanan eksternal yang diperlukan adalah:
Kami menggunakan Postgres untuk databasenya.
Anda dapat menjalankan Postgres & Redis secara lokal menggunakan docker-compose
docker-compose up -d # -d will run the services in the background
Buat file .env
Anda sendiri:
cp apps/web/.env.example apps/web/.env
cd apps/web
pnpm install
Atur variabel lingkungan di .env
yang baru dibuat. Anda dapat melihat daftar variabel yang diperlukan di: apps/web/env.ts
.
Variabel lingkungan yang diperlukan:
NEXTAUTH_SECRET
-- dapat berupa string acak apa pun (coba gunakan openssl rand -hex 32
untuk string acak cepat dan aman)GOOGLE_CLIENT_ID
-- ID klien Google OAuth. Info lebih lanjut di siniGOOGLE_CLIENT_SECRET
-- Rahasia klien Google OAuth. Info lebih lanjut di siniOPENAI_API_KEY
-- Kunci API OpenAI.UPSTASH_REDIS_URL
-- Redis URL dari Upstash.UPSTASH_REDIS_TOKEN
-- Redis token dari Upstash.TINYBIRD_TOKEN
-- Token admin untuk ruang kerja Tinybird Anda (pastikan untuk membuat instance di wilayah GCP us-east4
. Ini juga dapat diubah melalui .env
jika Anda lebih memilih wilayah lain). Anda juga dapat memutuskan untuk menonaktifkan Tinybird dan kemudian fitur analitik dan berhenti berlangganan massal akan dinonaktifkan. Tetapkan NEXT_PUBLIC_DISABLE_TINYBIRD=true
jika Anda memutuskan untuk menonaktifkan Tinybird.Untuk menjalankan migrasi:
pnpm prisma migrate dev
Untuk menjalankan aplikasi secara lokal:
pnpm run dev
Atau dari root proyek:
turbo dev
Buka http://localhost:3000 untuk melihatnya di browser Anda. Untuk meningkatkan diri Anda menjadi admin, kunjungi: http://localhost:3000/admin.
Anda harus mengaktifkan cakupan berikut di Google Cloud Console:
https://www.googleapis.com/auth/userinfo.profile
https://www.googleapis.com/auth/userinfo.email
https://www.googleapis.com/auth/gmail.modify
https://www.googleapis.com/auth/gmail.settings.basic
https://www.googleapis.com/auth/contacts
Ikuti petunjuk di sini untuk menyiapkan pipes
dan datasources
.
Opsional: Jika Anda juga ingin menyimpan statistik penggunaan AI di Tinybird, lakukan hal yang sama di /packages/tinybird-ai-analytics
.
Ikuti instruksi di sini.
Setel env var GOOGLE_PUBSUB_TOPIC_NAME
. Saat membuat langganan, pilih Push dan urlnya akan terlihat seperti: https://www.getinboxzero.com/api/google/webhook?token=TOKEN
atau https://abc.ngrok-free.app/api/google/webhook?token=TOKEN
dimana domainnya adalah domain Anda. Tetapkan GOOGLE_PUBSUB_VERIFICATION_TOKEN
di file .env
Anda menjadi nilai TOKEN
.
Untuk menjalankan ngrok dalam pengembangan dapat membantu:
ngrok http 3000
# or with an ngrok domain to keep your endpoint stable (set `XYZ`):
ngrok http --domain=XYZ.ngrok-free.app 3000
Lalu perbarui titik akhir webhook di dasbor langganan Google PubSub.
Untuk mulai menonton email, kunjungi: /api/google/watch/all