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/mobile/project-structure.md (or send Accept: text/markdown).
Proje yapısı
Rotaları, özellik modüllerini ve arka uçla sınırı bulun.
Kurulum ve yapılandırma
Herhangi bir adımdan önce Başlamadan önce ve Terminal temelleri'ni okuyun. supastack klasörünü kökünde açın — package.json içeren klasör. Bir Mobile checkout, apps/mobile'ı ve aşağıdaki paylaşılan paketleri içerir; All Platforms monorepo'su Web arka ucunu ve Desktop kabuğunu ekler. Ortam değişkeni, yerel bir .env dosyasında veya barındırma panelinizde saklanan adlandırılmış bir ayardır; değişiklikten sonra uygulamayı yeniden başlatın ve sunucu gizli bilgilerini EXPO_PUBLIC_ değerlerinin dışında tutun.
1. apps/mobile/app/_layout.tsx'i düzenleyicide açın — her ekranın paylaştığı kök düzen.
2. apps/mobile/src/'yi gözden geçirin — her biri mantığı ve testlerini içeren, özellik alanı başına bir klasör.
3. Depo kökünden corepack pnpm --filter @supastack/mobile start çalıştırın ve cihazınızda önizlemeyi açın.
Expo uygulaması, özellik modüllerini çağıran rotalar olarak düzenlenmiştir. Rotalar ince kalır — ekranları oluşturur; çağırdıkları mantık src/ altında testleriyle birlikte yaşar. Davranışı değiştirmeden önce AGENTS.md ve .ai/PROJECT_CONTEXT.md'yi okuyun; .ai/ yansıma belgeleri tek bir dosyadan görünmeyen kararları kaydeder.
apps/mobile/app/ Expo Router routes — sign-in, onboarding, invite, paywall
apps/mobile/app/(app)/ Signed-in screens — home, chat, notifications, settings, content, commerce, assistant
apps/mobile/src/ Feature modules — auth, api, purchases, offline, push, ui, theme, i18n
packages/ui-native/ Shared native view-models
packages/design-tokens/ Shared theme tokens
apps/mobile/app.config.ts Scheme and allowed-origin derivation
apps/mobile/eas.json EAS build and submit profiles
docs/ Runbooks incl. store submission
.agents/skills/ Task guides for coding agentsDeğişikliğin ait olduğu yer
Düzenlemeden önce hangi klasörün değişikliğe sahip olduğuna karar verin. Kural şudur: bir rota dosyası yalnızca render eder; yeniden kullanılabilir mantık bir src/ modülünde yaşar; sunucunun karar vermesi gereken hiçbir şey uygulamaya girmez.
- Yeni bir oturum açmış ekran →
apps/mobile/app/(app)/rota için veapps/mobile/src/<feature>/mantığı için. - Yeni bir ön kimlik doğrulama veya bağımsız ekran →
(app)grubunun dışındaapps/mobile/app/. - Arka uca bir çağrı →
apps/mobile/src/api/client.ts— geçici fetch yapmak yerine tiplendirilmiş istemciyi genişletin. - Ekranlar arasında paylaşılan bir görsel →
apps/mobile/src/ui/ilkel öğeleri; platformlar arası bir görünüm modeli →packages/ui-native/. - Renkler, boşluk ve koyu/açık değerler →
packages/design-tokens/tarafından desteklenenapps/mobile/src/theme/. - Yeni bir çeviri anahtarı →
apps/mobile/src/i18n/altındaki dört kataloğun hepsi. - Sunucu tarafındaki her şey — veriler, izinler, sağlayıcı çağrıları → Web arka uç deposu, yalnızca Mobile satın alımları için ayrı bir checkout'tur.
Uygulama iş akışı
Rota dosyasından başlayın, render ettiği özellik modülünü, ardından API istemci çağrısını izleyin — sunucu sahipliğe karar verir; uygulama asla yeniden türetmez. .agents/skills/'deki add-a-mobile-screen becerisi aynı sırayı izler.
Paylaşılan bir paketi veya API istemcisini düzenledikten sonra paket testlerini ve tür denetimini çalıştırın; istemci, arka ucun sunduğu sözleşmenin aynısını korumalıdır.
Doğrulama ve sorun giderme
expo start eksik bir modül rapor ederse, kurulum komutunu depo kökünden çalıştırın — uygulama klasörü tek başına workspace paketlerini çözemez. Bir ekran stilsiz görünürse, sabit kodlanmış renklere sahip ham öğeler yerine src/ui ilkel öğelerini oluşturduğunu kontrol edin.
corepack pnpm --filter @supastack/mobile test
corepack pnpm --filter @supastack/mobile typecheck