dotnet new komut satırına ek olarak, bu repo VS Code / Cursor içinde çalışan görsel bir sihirbaz da sunar: Diyanet Studio. Activity Bar’dan açılır, template’i klonlar, sorularla yapılandırır ve çözümü üretir.
Eklentinin kaynağı repoda tools/DiyanetCleanArchitecture.Studio.Vsix altındadır (TypeScript + React, VS Code extension). .slnx’e dâhil değildir; bağımsız bir geliştirici aracıdır.
Sihirbaz ham
dotnet new çağırmaz; template’in tools/ dizinindeki diyanet-cli new komutunu sürer. Bu komut provider seçimini, modül/servis budamayı, Initial migration üretimini ve build’i tek adımda yapar.Nasıl çalışır
Gereksinimler
1. Eklentiyi oluştur (.vsix paketle)
1
Eklenti dizinine geç
2
Bağımlılıkları kur ve derle
3
Paketle
diyanet-studio-<sürüm>.vsix. Sürüm package.json → version’dan gelir. (--no-dependencies: React zaten webview bundle’ına gömülüdür, node_modules paketlenmez.)2. Kur
- Arayüzden (en güvenilir)
- Komut satırından
- Extensions panelini aç (
Ctrl+Shift+X) - Sağ üstteki
...menüsü → Install from VSIX… - Ürettiğin
diyanet-studio-<sürüm>.vsixdosyasını seç
Aynı sürüme tekrar kurarsan editör eski kodu cache’ler (örn. sihirbaz
Bilinmeyen işlem: loadModules der). İki çözüm: package.json’da sürümü artır (0.1.0 → 0.1.1) ve yeniden paketle/kur, veya kurulumdan sonra Ctrl+Shift+P → "Developer: Reload Window" ile pencereyi tazele.3. Kullan
1
Sihirbazı aç
Activity Bar’daki Diyanet Studio ikonu → “Yeni Solution Oluştur”. Sihirbaz panel olarak açılır.
2
Template ve yapılandırma
Template git URL’ini ver. Sihirbaz
template.json sembollerini okuyup şu adımları sunar:
proje adı → veritabanı (PostgreSQL/MSSQL) → modüller → altyapı servisleri → Keycloak client öneki (ProjectKeycloakId).3
Oluştur
Çıktı klasörünü seç ve Oluştur. Sihirbaz
diyanet-cli new ile çözümü üretir; canlı log akar. Bitince proje hazırdır.Keycloak alanına girdiğin değer template’e
-P <ProjectKeycloakId> olarak geçer ve yalnızca client öneklerini (<id>-website, <id>-admin) belirler. Realm adları sabittir (diyanet-vatandas-…, diyanet-yonetim-…) çünkü realm, projeler arası paylaşılan kimlik alanıdır (SSO). Ayrıntı: Şablonu Kullanmak.Sorun giderme
Sihirbaz 'Bilinmeyen işlem: loadModules' veriyor
Sihirbaz 'Bilinmeyen işlem: loadModules' veriyor
Editör eski extension sürümünü bellekte çalıştırıyordur (aynı sürüme
--force kurulum). package.json sürümünü artırıp yeniden paketle/kur, ya da Developer: Reload Window yap.'diyanet-cli proje dosyası bulunamadı'
'diyanet-cli proje dosyası bulunamadı'
Sihirbaz, klonlanan template’in
tools/ dizininde *Studio.Cli/*.csproj bekler. Verdiğin template URL’i bu projeyi içermelidir (bu repo içerir).Üretim '.NET 10 SDK gerekli' diyor
Üretim '.NET 10 SDK gerekli' diyor
dotnet --list-sdks ile kontrol et; 10.x yoksa dotnet.microsoft.com/download/dotnet/10.0 adresinden kur.Çıktı çift klasör oluşturuyordu (C:\…\Foo\Foo)
Çıktı çift klasör oluşturuyordu (C:\…\Foo\Foo)
Güncel sürümde düzeltildi: seçilen çıktı dizini zaten proje adıyla bitiyorsa tekrar eklenmez.