İçeriğe geç

Web ortamları ve bölüm kataloğu

Geliştirme · 1.0.0

Yayın

Doküman
1.0.0
Uygulama
1.0.0
Şema
1
Veri
tr-latn-1

Bu sayfa

Uygulama
1.0.0
Şema
f10
Veri
tr-latn-1

Yeni /reader web yüzeyi katalog, chapter, heading, target ve addressing okumalarını NEXT_PUBLIC_MUNDERECAT_CONTENT_API_URL üzerinden yapar:

  • local: http://127.0.0.1:8788/v1
  • production: https://api.munderecat.com/v1

NEXT_PUBLIC_MUNDERECAT_RUNTIME açıkça local veya production olmalıdır. Content API origini eksikse veya yanlış ortama aitse production’a fallback yapılmaz.

Eski /chapters ve annotation yüzeyleri Supabase adresini NEXT_PUBLIC_SUPABASE_URL ve anahtarı NEXT_PUBLIC_SUPABASE_ANON_KEY ile alır. Bu transport /reader tarafından kullanılmaz.

  • local: URL yalnızca localhost, 127.0.0.1 veya ::1 olabilir. Hosted Supabase adresi reddedilir; local bağlantı başarısız olduğunda remote’a sessiz fallback yapılmaz.
  • production: URL HTTPS ve *.supabase.co olmalıdır. Loopback adresleri reddedilir.

Content API sınırı apps/web/src/lib/content-api/environment.ts, legacy Supabase sınırı ise apps/web/src/lib/api-v1.ts içindeki configuration yardımcılarında uygulanır. Yanlış ortam değişkeni eksik veriyle devam etmek yerine açık bir yapılandırma hatası üretir.

Ana sayfa artık varsayılan tek bölüm yönlendirmesine bağlı değildir. Public api_v1.list_chapter_catalog_v1 RPC’si aktif core deployment’tan 298 bölümün tamamını, core kitap/bölüm sırasını ve target-render İngilizce durumunu tek cevapta döndürür. Web katmanı cevabı şu kapalı durumlara doğrular:

  • exact: 179 bölüm
  • translation_unavailable: 12 bölüm
  • no_english_source: 107 bölüm

İngilizce reader yalnızca target-render exact metnini kullanır; diğer iki durumda Türkçe veya Latin fallback yapılmaz. Katalogtan seçilen her bölüm yine mevcut release-bound core RPC’leri üzerinden açılır; reconstruction ve token sırası değişmez.

MUNDERECAT_SAMPLE_MODE=true yalnızca sample quick-start ve fixture testleri için tek varsayılan bölüme yönlendirmeyi etkinleştirir. Production bu değişkeni false/boş bırakmalı ve tam kataloğu göstermelidir.

Web paketinde:

Terminal window
pnpm --filter @munderecat/web typecheck
pnpm --filter @munderecat/web lint
pnpm --filter @munderecat/web test
pnpm --filter @munderecat/web test:browser

catalog.spec.mjs tam olarak 298 linki ve local browser isteklerinin yalnızca 127.0.0.1:4313 fixture origin’ine gittiğini doğrular. Gerçek local Supabase ile çalıştırmada aynı kural NEXT_PUBLIC_SUPABASE_URL=http://127.0.0.1:55321 ve NEXT_PUBLIC_MUNDERECAT_RUNTIME=local değerleriyle geçerlidir.