Üreticiler ve bağımsız geliştiriciler için tasarlanmış açık kaynak, hafif Trello alternatifi.
Basitlik, hız ve ölçeklenebilirliğe odaklanır. Modern teknolojiyle inşa edildi: Tailwind CSS, shadcn/ui, Supabase, Stripe entegrasyonu. Sınırsız proje, ekip iş birliği, karanlık/açık mod ve sorunsuz kullanıcı deneyimi sunar. Gereksiz karmaşıklık olmadan tam kontrol isteyen bireysel geliştiriciler ve küçük ekipler için idealdir.
🌟 Bu projeyi faydalı buluyorsanız, bir yıldız vermeyi düşünün! Başkalarının da keşfetmesine yardımcı olur.
Dağıtım Rehberi
Genel Bakış
Bu uygulama artık Stripe entegrasyonu için Supabase Edge Functions yerine yerel Next.js API rotalarını kullanıyor. Bu, dağıtımı basitleştirir ve yapılandırma için standart .env dosyalarını kullanmanıza olanak tanır.Ortam Değişkenleri Kurulumu
1. .env.local dosyası oluşturun
.env.example dosyasını .env.local olarak kopyalayın ve gerçek değerlerle doldurun:cp .env.example .env.local2. Gerekli Ortam Değişkenleri
#### Supabase Yapılandırması
NEXT_PUBLIC_SUPABASE_URL- Supabase proje URL'nizNEXT_PUBLIC_SUPABASE_ANON_KEY- Supabase anonim anahtarınızSUPABASE_SERVICE_ROLE_KEY- Supabase servis rol anahtarınız (sadece sunucu tarafı)
STRIPE_SECRET_KEY- Stripe gizli anahtarınız (sadece sunucu tarafı)NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY- Stripe yayınlanabilir anahtarınızSTRIPE_WEBHOOK_SECRET- Stripe webhook gizli anahtarınız
NEXT_PUBLIC_SITE_URL- Sitenizin URL'si (canlı ortam için)NEXTAUTH_URL- Sitenizin URL'si (yukarıdakiyle aynı)NEXTAUTH_SECRET- NextAuth için rastgele bir gizli anahtar
Yerel Geliştirme
- Bağımlılıkları yükleyin:
npm install- Ortam değişkenlerinizi
.env.localdosyasında ayarlayın - Geliştirme sunucusunu çalıştırın:
npm run dev- Stripe CLI kullanarak Stripe webhook'larını yerel olarak test edin:
stripe listen --forward-to localhost:3000/api/stripe/webhookÜretim Dağıtımı
Vercel Dağıtımı
- Vercel'e Dağıt:
npx vercel
- Ortam Değişkenleri:
- Stripe Webhook Kurulumu:
- Webhook'u şu adrese yönlendirin:
https://your-domain.vercel.app/api/stripe/webhook
API Uç Noktaları
Uygulama artık bu yerel API rotalarını kullanıyor:
POST /api/stripe/checkout- Stripe ödeme oturumları oluştururPOST /api/stripe/webhook- Stripe webhook olaylarını işler
Yerel API Rotalarının Faydaları
- Daha Basit Dağıtım - Ayrı edge fonksiyonları dağıtmaya gerek yok
- Ortam Değişkenleri - Standart .env dosyası desteği
- Daha İyi Hata Ayıklama - Yerelde hata ayıklamak daha kolay
- Çerçeve Entegrasyonu - Next.js ile daha iyi entegrasyon
- Tedarikçiye Bağımlılık Yok - Next.js'i destekleyen herhangi bir platforma dağıtılabilir
Sorun Giderme
- Webhook Sorunları:
STRIPE_WEBHOOK_SECRETdeğerinin Stripe webhook uç noktanızla eşleştiğinden emin olun- Stripe panelinde webhook günlüklerini kontrol edin
- Webhook URL’sinin doğru olduğuna emin olun
- Ortam Değişkenleri:
- Gerekli tüm değişkenlerin ayarlandığından emin olun
- Değişken adlarında yazım hatası olup olmadığını kontrol edin
- Supabase servis rol anahtarının uygun izinlere sahip olduğuna emin olun
- CORS Sorunları:
- API rotalarında uygun CORS başlıkları bulunur
- Gerekirse alan adınızın beyaz listeye alındığından emin olun
Güvenlik Notları
STRIPE_SECRET_KEYveyaSUPABASE_SERVICE_ROLE_KEYanahtarlarını asla istemciye göstermeyin- Yalnızca istemci tarafı değişkenleri için
NEXT_PUBLIC_önekini kullanın - Webhook sırlarınızı düzenli olarak değiştirin
- Stripe panelinde webhook teslimatını izleyin