İçeriğe atla
supastack
Dokümanlara göz atın
WebNext.js

For AI agents: fetch the complete documentation index at /llms.txt, the full documentation corpus at /llms-full.txt, the agent skill at /skill.md, or this page as Markdown at /tr/docs/web/setup-oauth.md (or send Accept: text/markdown).

OAuth girişini kurun

Google, Apple, GitHub, Microsoft ve Twitter — her biri için bir bayrak artı bir istemci çifti.

Gerçek bir hesap oluşturun ve doğrulayın

Kimlik doğrulama, uygulamayı kimin kullandığını kanıtlamak anlamına gelir. Postgres'yi başlatın ve önce veritabanı kılavuzunu kullanarak geçişleri çalıştırın, ardından Web sunucusunu çalışır durumda bırakın. http://localhost:3000/auth,'yi açın, e-posta/şifre kaydı seçeneğini seçin, adınızı, e-posta adresinizi ve şifrenizi girin ve gönderin. EMAIL_PROVIDER=local'yi bu ilk test için saklayın.

Bir akış bir e-posta kodu istediğinde http://localhost:3000/mail-preview'yi başka bir tarayıcı sekmesinde açın, o adrese ilişkin en son iletiyi bulun ve kodunu tekrar oturum açma formuna kopyalayın. Süresi dolarsa yeni bir kod isteyin. Bu mesajlar yerel giden kutusunda kalır; harici bir gelen kutusunu tekrar tekrar kontrol etmek bunları bulamaz. Oturumu kapatın, ardından veritabanı destekli hesabın çalıştığını doğrulamak için tekrar oturum açın.

Kayıt sırasında bir veritabanı bağlantısı veya eksik tablo hatası bildirilirse, sosyal oturum açmayı etkinleştirmek yerine veritabanı kurulumunu tamamlayın. Google, GitHub, Apple, X ve Microsoft düğmelerinin kendi sağlayıcı uygulamasına ve geri arama ayarlarına ihtiyacı vardır; birini yalnızca sağlayıcı kılavuzu tamamlandıktan sonra etkinleştirin. Better Auth, gönderilen varsayılan motordur ve yerel e-postayla oturum açmak için ücretli bir kimlik doğrulama hesabına ihtiyaç duymaz.

Etkin giriş yöntemlerini seçin

Temel, e-posta/parola, OTP ve yapılandırılabilir sosyal kimlik doğrulamayı içerir. Better Auth kimliği ve oturumları sahiplenirken uygulama, sağlayıcı yapılandırmasını ve işlemsel OTP teslimini bir araya getirir.

Yalnızca yapılandırdığınız sosyal sağlayıcıları etkinleştirin. Sağlayıcı istemci sırları ve kimlik doğrulama sırrı sunucuda kalır.

Kimliği çalışma alanına bağlayın

Kimliği doğrulanmış işleyiciler, çalışma alanı kayıtlarına erişmeden önce oturum durumunu çözer. Çalışma alanı sağlama, yaşam döngüsü kancasını yeniden oynatmanın yinelenen sahiplik kayıtları oluşturmaması için idempotent kalmalıdır.

Oturum davranışını doğrulayın

Girişi, geçersiz ya da süresi dolmuş OTP'leri, tek kullanımlık tüketimi, çıkışı ve reddedilen anonim erişimi test edin. Bellek bağdaştırıcısı testleri işleyici semantiğini kapsar; üretim veritabanı kalıcılığı ve gerçek sağlayıcı geri çağrıları ayrı kabul gerektirir.

Kurulum ve yapılandırma

1. AUTH_SECRET'ı en az 32 rastgele karaktere ayarlayın — openssl rand -hex 32 işe yarar.

2. Her sağlayıcının geliştirici konsolunda bir OAuth uygulaması oluşturun ve geri çağrı URL'sini kaydedin: Better Auth altında (varsayılan AUTH_PROVIDER) {APP_URL}/api/auth/callback/<provider>. Sağlayıcının yalnızca tek geri çağrıya izin verdiği yerde yerel ve üretim için ayrı uygulamalar kullanın — docs/github-auth-setup.md GitHub akışını uçtan uca anlatır.

3. Sağlayıcının bayrağını açın ve istemci çiftini ayarlayın — AUTH_GOOGLE_ENABLED artı GOOGLE_CLIENT_ID ve GOOGLE_CLIENT_SECRET; Apple, GitHub, Microsoft ya da Twitter için de eşleşen üçlü. Bir bayrağı kimlik bilgileri olmadan açmak başlatmayı başarısız kılar ve eksik değişkeni adıyla belirtir.

4. Microsoft, motora göre farklılaşan tek geri çağrıdır: Better Auth altında /api/auth/callback/microsoft, Auth.js altında /api/auth/callback/microsoft-entra-id.

AUTH_SECRET=<at-least-32-random-characters>
AUTH_PASSKEY_ENABLED=true
EARLY_ACCESS_INVITE_ONLY=false

AUTH_GOOGLE_ENABLED=true
GOOGLE_CLIENT_ID=…
GOOGLE_CLIENT_SECRET=…

AUTH_GITHUB_ENABLED=true
GITHUB_CLIENT_ID=…
GITHUB_CLIENT_SECRET=…

# AUTH_APPLE_ENABLED / AUTH_MICROSOFT_ENABLED / AUTH_TWITTER_ENABLED
# follow the same pattern:
# MICROSOFT_CLIENT_ID=…  MICROSOFT_CLIENT_SECRET=…
# TWITTER_CLIENT_ID=…    TWITTER_CLIENT_SECRET=…

# Workspace connected accounts (Settings → Connections):
# CONNECTED_X_CLIENT_ID=          CONNECTED_X_CLIENT_SECRET=
# CONNECTED_GOOGLE_CLIENT_ID=     CONNECTED_GOOGLE_CLIENT_SECRET=
# CONNECTED_MICROSOFT_CLIENT_ID=  CONNECTED_MICROSOFT_CLIENT_SECRET=

# Callbacks to register (Better Auth):
#   {APP_URL}/api/auth/callback/google
#   {APP_URL}/api/auth/callback/apple
#   {APP_URL}/api/auth/callback/github
#   {APP_URL}/api/auth/callback/twitter
#   {APP_URL}/api/auth/callback/microsoft   (Auth.js: microsoft-entra-id)

Uygulama iş akışı

Çalışma alanı harici hesapları ayrı bir yüzeydir: CONNECTED_X_*, CONNECTED_GOOGLE_* ve CONNECTED_MICROSOFT_* çiftleri Ayarlar → Bağlantılar'ı besler ve geri çağrıları {APP_URL}/api/accounts/{x|google|microsoft}/callback altında yaşar. Boş bir istemci kimliği o sağlayıcının bağlantı akışını devre dışı bırakır — orada giriş uygulaması kimlik bilgilerini yeniden kullanmayın.

Sağlayıcı istemci sırları, tıpkı AUTH_SECRET gibi yalnızca sunucuda kalır — asla NEXT_PUBLIC_ ya da EXPO_PUBLIC_ değişkenlerinde değil.

Giriş çalışıyor mu? YZ'yi kurun ile devam edin.

Doğrulama ve sorun giderme

İlk kez girişi, dönen bir oturumu, iptal edilen bir onay ekranını ve devre dışı bir sağlayıcıyı test edin. Geri çağrı uyuşmazlığı olağan hatadır — kayıtlı URL, APP_URL ve motorun geri çağrı kimliğiyle birebir eşleşmelidir ve ortam değişikliklerinden sonra uygulama yeniden başlatma ister.

Kuruluma devam etmek için YZ'yi kurun kılavuzunu okuyun.

Sık sorulan sorular

14 soru

supastack nedir?

supastack, YZ destekli SaaS ürünleri oluşturmak için modüler bir temeldir. Ortak altyapıyı bir araya getirir, böylece ürüne özgü özelliklere odaklanabilirsiniz.

Web ve mobil destekliyor mu?

Evet. supastack, web ve mobil deneyimler için başlangıç noktası olarak Next.js ve Expo uygulamaları içerir.

Hangi kimlik doğrulama dahil?

Better Auth; e-posta/parola, OTP ve sosyal girişi kapsar. Kişisel çalışma alanları hesapla birlikte sağlanır, böylece ürün kayıtları ilk günden itibaren sınırlı kalır.

YZ'yi nasıl destekliyor?

supastack; yapılandırılabilir çok sağlayıcılı YZ, kullanım takibi, bütçeler ve şifreli kendi-anahtarını-getir desteği içerir.

Abonelikler nasıl ele alınıyor?

Kit üzerine kurulu ürünler için Stripe faturalama, abonelikler ve yetkilendirmeler ücretli erişim temelini oluşturur. Sağlayıcı gizli anahtarları yalnızca sunucuda kalır.

Ürüne özgü kodum nerede durur?

Ürüne özgü özellikler ayrı bir kod tabanında kalırken ürün, supastack'in temel modüllerini yapılandırır ve entegre eder.

supastack fiyatlandırması nasıl çalışır?

Kit, ömür boyu güncellemeli tek seferlik bir satın alımdır: 249 $'a Tek Platform (geçici tanıtım fiyatı — normal fiyat 349 $ üzerinden 100 $ indirim) — Next.js (Web), Expo (iOS ve Android) veya Tauri (macOS ve Windows Masaüstü) seçiminiz — ya da tüm platformları ve tam monorepo'yu içeren 499 $'lık Tüm Platformlar Paketi (geçici tanıtım fiyatı — normal fiyat 599 $ üzerinden 100 $ indirim); ek geliştirici koltuğu başına 75 $. Kit aboneliği yok. Bu sitedeki ödeme, lisans anahtarınızı e-postayla teslim eder ve depo erişimi GitHub davetiyle sağlanır.

Çalışma alanları verilerimi nasıl sınırlar?

Kullanıcıya ait kayıtlar workspaceId ile sınırlanır. Kimlik, yetkilendirmeler, YZ kullanımı, faturalama olayları ve denetim kayıtları kişisel çalışma alanı sınırının içinde kalır.

Arka plan işleri nasıl çalışır?

Trigger.dev açık iş çalışma zamanıdır. JobRunner sözleşmesi yalnızca enqueue, status ve cancel vaat eder — iş akışı semantiği Trigger.dev'e özgü ve açık kalır.

E-posta, tanıtım yazılarından nasıl farklı?

İşlemsel e-posta, tamamlanma bildirimleri gibi ürün iş akışlarını kapsar. Soğuk tanıtım ve kampanyalar, bu kitin e-posta modülünün dışında kalan ürün konularıdır.

Mobil satın almalar nasıl çalışır?

Mobil uygulama RevenueCat ile yerel satın alma ve geri yükleme sunar; erişimi sunucunuz doğrular. Yayınlamadan önce mağaza hesaplarını yapılandırın ve cihaz testlerini tamamlayın. Web faturalandırması ayrı kalır.

YZ sağlayıcı anahtarları nerede durur?

Kendi-anahtarını-getir kimlik bilgileri şifrelidir ve yalnızca sunucuda kalır. Anahtarlar günlüklerden gizlenir; kullanım ve bütçeler çalışma alanı düzeyinde görünür kalır.

Ödeme hangi ödeme yöntemlerini kabul ediyor?

Stripe tarafından barındırılan ödeme sayfası kartları kabul eder; cüzdanlar Stripe hesabında etkinleştirildiğinde Alipay ve WeChat Pay de sunabilir — Çin'deki alıcılar için kullanışlı. Cüzdan yetkilendirmeleri eşzamansız onaylanır; ödeme tamamlanır tamamlanmaz lisans sayfası güncellenir.

Geri ödeme alabilir miyim?

Depoya erişim kazandıktan sonra supastack sonsuza kadar sizin olur, bu nedenle geri ödeme yapılamaz. Ancak içiniz rahat olsun: kendiniz veya müşterileriniz için sınırsız sayıda ürün geliştirip yayınlamak üzere ömür boyu güncellemeler içeren eksiksiz kaynak koduna sahip olursunuz. Yalnızca kodu yeniden satamaz veya depoyu bir başlangıç kiti ya da şablon olarak yeniden dağıtamazsınız.

TR
Tema