> ## Documentation Index
> Fetch the complete documentation index at: https://supastack.dev/llms.txt
> Use this file to discover all available pages before exploring further.
> For the full documentation corpus in one file, fetch: https://supastack.dev/llms-full.txt

# 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](https://supastack.dev/tr/docs/mobile/before-you-start.md) ve [Terminal temelleri](https://supastack.dev/tr/docs/mobile/terminal-basics.md)'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 agents
```


## Değ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.

[İlk mobil özelliğinizi oluşturun](https://supastack.dev/tr/docs/mobile/first-feature.md)

- Yeni bir oturum açmış ekran → `apps/mobile/app/(app)/` rota için ve `apps/mobile/src/<feature>/` mantığı için.
- Yeni bir ön kimlik doğrulama veya bağımsız ekran → `(app)` grubunun dışında `apps/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 desteklenen `apps/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
```


## Sonraki

[İlk özelliğinizi oluşturun](https://supastack.dev/tr/docs/mobile/first-feature.md)
