diff --git a/implementation_plan.md b/implementation_plan.md index fe3cb66..2c90031 100644 --- a/implementation_plan.md +++ b/implementation_plan.md @@ -1,4 +1,4 @@ -# Multi-PHP & MySQL Server (Electron) Uygulama Planı +# Trunçgil Multi-PHP & MySQL Server (Electron) Uygulama Planı Bu plan, Windows platformunda Laragon veya XAMPP benzeri, ancak Electron ile modern bir arayüze sahip, çoklu PHP sürümlerini destekleyen bir geliştirme sunucusu uygulamasının yapımını kapsar. @@ -13,6 +13,7 @@ Bu plan, Windows platformunda Laragon veya XAMPP benzeri, ancak Electron ile mod - [ ] **Proje Bazlı Sürüm Yönetimi**: Hangi projenin/dizinin hangi PHP ve MySQL sürümüyle çalışacağının tekil olarak belirlenmesi. - [ ] **Kurumsal Kimlik**: Belirlenen renk paleti (`#153E5E`, `#4A7CA3`) ve logo (`truncgil-multiphp-server.svg`) ile markalı bir arayüz. - [ ] **Otomatik Sürüm Algılama (Auto-Detect)**: Proje dizinindeki `composer.json` dosyasını analiz ederek gerekli PHP ve Laravel sürümünü otomatik tespit etme. +- [ ] **Uluslararasılaştırma (i18n)**: Uygulamanın Türkçe, İngilizce ve Almanca gibi çoklu dil desteği sunması (`tr.json`, `en.json`, `de.json`). - [ ] **Otomatik Konfigürasyon**: VHost, PHP.ini ve MySQL ayarlarının kullanıcı müdahalesi olmadan hazırlanması. ## Teknik Detaylar @@ -49,6 +50,9 @@ Uygulamanın tamamı **Material UI (MUI)** kütüphanesi kullanılarak geliştir - **Ağ Ayarları (Listen IP/Port)**: Servislerin sadece `localhost` (127.0.0.1) üzerinden mi yoksa dışa açık (0.0.0.0) şekilde mi çalışacağının belirlenmesi. - **Global Ayarlar**: Port seçimleri (80, 443, 3306), PHP sürüm atamaları. - **Sanal Sunucu (VHost) Yönetimi**: Yeni domain ekleme ve `hosts` dosyası güncelleme. +- **Dil Desteği (i18n)**: + - Uygulama başlangıcında sistem dilini algılama veya kullanıcı seçimine göre `tr`, `en`, `de` dillerini yükleme. + - Dil dosyalarının `locales/` klasörü altında JSON formatında tutulması. ## Klasör Yapısı @@ -65,6 +69,7 @@ multiphp/ ├── data/ # MySQL verileri (user database) ├── main/ # Electron ana süreç kodları ├── ui/ # React/Vanilla JS arayüz dosyaları +├── locales/ # Dil dosyaları (tr.json, en.json, de.json) └── package.json # Bağımlılıklar ve scriptler ``` diff --git a/locales/de.json b/locales/de.json new file mode 100644 index 0000000..6eb8df5 --- /dev/null +++ b/locales/de.json @@ -0,0 +1,12 @@ +{ + "appName": "Trunçgil Multi-PHP Server", + "dashboard": "Dashboard", + "settings": "Einstellungen", + "services": "Dienste", + "start": "Starten", + "stop": "Stoppen", + "phpVersion": "PHP-Version", + "mysqlVersion": "MySQL-Version", + "nginxVersion": "Nginx-Version", + "language": "Sprache" +} \ No newline at end of file diff --git a/locales/en.json b/locales/en.json new file mode 100644 index 0000000..550122b --- /dev/null +++ b/locales/en.json @@ -0,0 +1,12 @@ +{ + "appName": "Trunçgil Multi-PHP Server", + "dashboard": "Dashboard", + "settings": "Settings", + "services": "Services", + "start": "Start", + "stop": "Stop", + "phpVersion": "PHP Version", + "mysqlVersion": "MySQL Version", + "nginxVersion": "Nginx Version", + "language": "Language" +} \ No newline at end of file diff --git a/locales/tr.json b/locales/tr.json new file mode 100644 index 0000000..41dd45a --- /dev/null +++ b/locales/tr.json @@ -0,0 +1,12 @@ +{ + "appName": "Trunçgil Multi-PHP Server", + "dashboard": "Dashboard", + "settings": "Ayarlar", + "services": "Servisler", + "start": "Başlat", + "stop": "Durdur", + "phpVersion": "PHP Sürümü", + "mysqlVersion": "MySQL Sürümü", + "nginxVersion": "Nginx Sürümü", + "language": "Dil" +}