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

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/project-structure.md (or send Accept: text/markdown).

Proje yapısı

Uygulamayı, paylaşılan paketleri ve aralarındaki sınırları bulun.

Kurulum ve yapılandırma

Herhangi bir adımdan önce, Başlamadan önce ve Terminal temelleri bölümlerini okuyun. Bu talimatlar, supastack monorepo'nun tamamını VS Kodunda açtığınızı varsayar; kök package.json dosyası depo kökünü işaretler. pnpm komutlarında çalışma alanı paketi bir uygulama veya paylaşılan kod klasörüdür; Üründe çalışma alanı, ekibin veri taşıyıcısı ve güvenlik sınırıdır. corepack pnpm --filter ... komutlar kökünden çalıştırılırken monorepodan bir paket seçer. Yalnızca senkronize edilmiş bir mobil veya masaüstü klasörü açtıysanız, Web arka ucunu, Docker kurulumunu veya kök komut dosyalarını içermez: arka ucu bu monorepodan veya erişilebilir bir barındırılan sunucudan çalıştırın ve platform klasörünün kendi komut dosyalarını kullanın. Ortam değişkeni, yerel bir .env dosyasında veya barındırma kontrol panelinizde depolanan adlandırılmış bir ayardır; İlgili uygulamayı değiştirdikten sonra yeniden başlatın ve sunucu sırlarını NEXT_PUBLIC_ ve EXPO_PUBLIC_ değerlerinin dışında tutun.

1. VS Code'da root package.json dosyasını açın, ardından web sitesi için apps/web'ye, Expo için apps/mobile'ye, masaüstü kabuğu için apps/desktop'ye ve paylaşılan parçalar için paketlere göz atın.

2. Depo kökünden corepack pnpm --filter @supastack/web dev komutunu çalıştırın.

3. http://localhost:3000.'yi açın Beklenen: Paylaşılan paketler aynı depoda kalırken Web uygulaması apps/web'den başlar; Masaüstü penceresi ikinci bir ürün içermek yerine bu Web uygulamasını sarar.

pnpm çalışma alanı; apps/web altında Next.js, apps/mobile altında Expo ve packages altında paylaşılan paketleri içerir. Çalışma alanı komutlarını depo kökünden çalıştırın. Uygulama rotaları paylaşılan modülleri bir araya getirir; ürüne özgü davranış tüketen ürüne aittir.

Davranışı değiştirmeden önce AGENTS.md ve .ai/PROJECT_CONTEXT.md dosyalarını okuyun. .ai/ altındaki dosya yansımaları, tek başına bileşenden anlaşılmayabilecek kararları ve kısıtları açıklar.

apps/web/app/       Routes and layouts
apps/web/src/       Web components and server composition
apps/mobile/        Expo application
packages/           Shared contracts and adapters
tests/              Cross-module and browser checks
docs/               Operational guides

Kopyalanacak komutlar

Bir komutun hangi klasörde çalıştığını görmek için yorumları takip edin. İki terminal etiketlenmişse, iki terminal penceresi açın ve ikincisini kullanırken ilk komutu çalışır durumda tutun.

corepack pnpm --filter @supastack/web dev

Değişikliğin ait olduğu yer

Düzenlemeden önce değişikliğin hangi uygulamaya ya da pakete ait olduğuna karar verin. Pratik kural: yalnızca bir ürün yüzeyi gerektiriyorsa o uygulamaya koyun; her yüzey gerektiriyorsa packages/ altındaki paylaşılan bir pakete koyun.

Web deposu ve Tüm Platformlar monorepo'su aşağıdaki klasörlerin hepsini içerir. Bağımsız bir Mobil veya Masaüstü kopyası yalnızca kendi uygulamasını içerir — sunucu kodu Web deposunda kalır.

  • Yeni bir pazarlama veya açılış sayfası → apps/web/app/ — herkese açık web sitesi.
  • Oturum açılmış ürün içinde yeni bir ekran → rota için apps/web/app/ ve mantığı için apps/web/src/ — sayfalar paylaşılan paketleri bir araya getirir.
  • Yeni bir API rotası → apps/web/app/api/ — Web uygulamasının sunucu yarısı.
  • Her uygulamanın paylaştığı bir değişiklik — veritabanı tablosu, sözleşme, sağlayıcı adaptörü → packages/ içindeki eşleşen klasör.
  • Yalnızca telefona özgü bir ekran → apps/mobile/ — kendi arka ucunu barındırmak yerine Web uygulamasının API'siyle konuşur.
  • Yalnızca masaüstüne özgü bir davranış → apps/desktop/ — Tauri kabuğu Web uygulamasını sarar ve ürün arayüzünü neredeyse hiç çatallamaz.

Uygulama iş akışı

Kullanıcı eylemini sahiplenen rotayla başlayın, sunucu işleyicisini izleyin ve ardından çağırdığı paylaşılan paketi inceleyin. Bir arayüz bileşeni çalışma alanı çözümünü, faturalama yetkilendirmesini ya da sağlayıcı seçimini yeniden oluşturmamalıdır.

Rota eklerken herkese açık mı yoksa kimlik doğrulamalı mı olduğuna karar verin. Kullanıcı kayıtlarına erişmeden önce kimliği doğrulanmış sahipliği sunucuda çözün ve sunucu kimlik bilgilerini istemci içe aktarımlarının dışında tutun.

Doğrulama ve sorun giderme

Komut, filtreyle eşleşen hiçbir proje olmadığını bildirirse, terminalin package.json kök dosyasını içeren klasörde olup olmadığını kontrol edin. Bağlantı noktası 3000 zaten kullanımdaysa, önce diğer yerel Web sunucusunu durdurun. Ayrı bir Masaüstü sohbeti veya oturum açma uygulaması aramayın; masaüstü kabuğu Web arka ucunu yükler.

Bir paket sözleşmesini değiştirdikten sonra ilgili testleri ve tip kontrolünü çalıştırın. Paylaşılan tipleri değiştirirken hem web hem mobil tüketicileri inceleyin. Tek başına başarılı bir web derlemesi, yerel uygulamayla uyumluluğu kanıtlamaz.

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