Validated on the combined 12-PR batch board: check:docs-all passes (docs-sync, doc-links over 855 links, fabricated-docs strict). 26-file Turkish documentation suite at full parity with consistent terminology. Thank you @ismailcelik-tr!
8.6 KiB
title, version, lastUpdated
| title | version | lastUpdated |
|---|---|---|
| OmniRoute Kod Tabanı Dokümantasyonu | 3.8.50 | 2026-08-23 |
OmniRoute Kod Tabanı Dokümantasyonu (Türkçe)
🌐 Languages: 🇺🇸 English · 🇸🇦 ar · 🇧🇬 bg · 🇧🇩 bn · 🇨🇿 cs · 🇩🇰 da · 🇩🇪 de · 🇪🇸 es · 🇮🇷 fa · 🇫🇮 fi · 🇫🇷 fr · 🇮🇳 gu · 🇮🇱 he · 🇮🇳 hi · 🇭🇺 hu · 🇮🇩 id · 🇮🇹 it · 🇯🇵 ja · 🇰🇷 ko · 🇮🇳 mr · 🇲🇾 ms · 🇳🇱 nl · 🇳🇴 no · 🇵🇭 phi · 🇵🇱 pl · 🇵🇹 pt · 🇧🇷 pt-BR · 🇷🇴 ro · 🇷🇺 ru · 🇸🇰 sk · 🇸🇪 sv · 🇰🇪 sw · 🇮🇳 ta · 🇮🇳 te · 🇹🇭 th · 🇹🇷 tr · 🇺🇦 uk-UA · 🇵🇰 ur · 🇻🇳 vi · 🇨🇳 zh-CN
Hedef Kitle: OmniRoute'a katkıda bulunan veya üzerine entegrasyonlar oluşturan mühendisler.
Yüksek düzey mimari diyagramları ve her alt sistemin gerekçeleri için ARCHITECTURE.md dosyasını okuyun.
Bu belge, yeni bir mühendisin proje ağacında gezinebilmesi, çalışma zamanı katmanlarını anlaması ve yeni modüller icat etmeden nereye kod ekleyeceğini bilmesi için bugün depoda neyin var olduğunu açıklar.
1. Teknoloji Yığını
| Alan | Tercih |
|---|---|
| Web framework | Next.js 16 (App Router, standalone çıktı, global middleware yok) |
| Dil | TypeScript 6.0+ — hedef ES2022, module: esnext, moduleResolution: bundler, strict: false |
| Çalışma Zamanı | Node.js >=22.22.2 <23 veya >=24.0.0 <27 |
| Veritabanı | better-sqlite3 ile SQLite (singleton, WAL günlük kaydı) |
| Masaüstü | Electron 41 + electron-builder (electron/ altında ayrı çalışma alanı) |
| Testler | Node yerel test çalıştırıcısı (unit/integration), Vitest (MCP, autoCombo, önbellek), Playwright (E2E) |
| Derleme | scripts/build/build-next-isolated.mjs üzerinden Next.js standalone |
| Lint/Format | ESLint flat config + Prettier (lint-staged ile Husky pre-commit) |
| Modül Sistemi | Her yerde ESM ("type": "module") |
| Çalışma Alanı | npm workspace — open-sse alt çalışma alanıdır |
Yol Takma Adları (tsconfig.json):
@/*→src/*@omniroute/open-sse→open-sse/index.ts@omniroute/open-sse/*→open-sse/*
Varsayılan HTTP portu: 20128 (API ve pano aynı süreci paylaşır). Veri dizini DATA_DIR ortam değişkenidir (varsayılan: ~/.omniroute/).
2. Depo Düzeni
OmniRoute/
├── src/ Next.js uygulaması (App Router, kütüphaneler, alan katmanı, sunucu, paylaşılanlar)
├── open-sse/ Akış motoru çalışma alanı (@omniroute/open-sse)
├── electron/ Masaüstü uygulaması (Electron 41 main + preload)
├── bin/ CLI giriş noktaları (omniroute, reset-password)
├── tests/ Birim, entegrasyon, e2e, protokol, çevirmen, güvenlik testleri
├── scripts/ Derleme, senkronizasyon, kontrol, migrasyon ve çalışma zamanı yardımcı betikleri
├── docs/ Genel dokümantasyon
├── public/ Statik varlıklar, PWA manifesti, servis çalışanı
├── config/ Çalışma zamanı yapılandırma örnekleri
├── CLAUDE.md Claude Code için kurallar
├── AGENTS.md Yapay zeka ajanları için derin mimari referansı
├── package.json Çalışma alanı kökü
└── tsconfig.json Yol takma adları ve derleyici seçenekleri
3. src/ — Next.js Uygulaması
src/
├── app/ App Router sayfaları + API rotaları
├── lib/ Çekirdek kütüphaneler (DB, kimlik doğrulama, OAuth, yetenekler, bellek vb.)
├── domain/ Saf alan katmanı (politika, geri dönüş, maliyet, kilitleme vb.)
├── server/ Yalnızca sunucu tarafı modüller (authz, cors, auth)
├── shared/ Tipler, sabitler, doğrulama, sözleşmeler, yardımcılar
├── mitm/ CLI entegrasyonu için Man-in-the-middle proxy yardımcıları
├── models/ Yerel model meta verileri / takma adlar
├── sse/ src/ altında yaşayan SSE işleyicileri
├── store/ İstemci tarafı Zustand durum depoları
├── middleware/ Rota düzeyinde ara yazılım yardımcıları (Next.js global middleware DEĞİL)
└── types/ TypeScript tip tanımları
4. open-sse/ — Akış ve Yürütücü Motoru
open-sse/
├── executors/ Sağlayıcıya özel istek yürütücüleri (101 modül)
├── handlers/ API türü başına istek işleyicileri (chat, responses, embeddings, images vb.)
├── mcp-server/ 110 araç ve 33 kapsam içeren yerleşik MCP sunucusu
├── services/ Yönlendirme, hız sınırlamaları, auto-combo, oturum yönetimi vb.
├── translator/ OpenAI ↔ Claude ↔ Gemini ↔ Ollama ↔ DeepSeek format çevirmenleri
├── transformer/ OpenAI Responses API dönüştürücüsü
└── utils/ Akış, TLS, proxy, günlük kaydı yardımcıları
5. tests/ — Test Paketleri
tests/unit/: Node.js yerleşik test çalıştırıcısı ile 2.700'den fazla test dosyasıtests/integration/: Modüller arası entegrasyon testleritests/e2e/: Playwright uçtan uca tarayıcı testleritests/security/: İstem enjeksiyonu, PII, yetkilendirme güvenlik testleritests/translator/: Format çevirmen doğruluk testleri