Bunu Neden İnşa Ettim?
"Electron tabanlı masaüstü uygulamaları, tam bir Chromium instance'ı ve Node.js runtime'ı barındırdıkları için aşırı bellek ve CPU tüketimiyle bilinirler. Bu proje, sistem izleme süreçleri için yüksek performanslı bir alternatif olarak geliştirilmiştir. Tauri kullanarak Node.js backend'ini tamamen ortadan kaldırır ve düşük seviyeli işletim sistemi çağrılarının donanım kaynaklarını sömürmeden modern bir web arayüzüne nasıl güvenli ve verimli bir şekilde bağlanabileceğini kanıtlar."
Mimari & Kararlar
Backend tamamen Rust ile tasarlanmış olup, platform bağımsız işletim sistemi API'lerine (örneğin Linux'ta `procfs`, Windows'ta WMI) doğrudan kanca (hook) atmak için `sysinfo` kütüphanesini kullanır. Anlık CPU deltalarını hesaplar, ayrık I/O disk yazmalarını izler ve bellek tahsislerini toplar. Bu ham telemetri verileri Rust struct'larına bağlanır, `serde` ile JSON olarak serileştirilir ve Tauri'nin IPC sınırı (`invoke`) üzerinden asenkron olarak iletilir. Sunum katmanı, izole görünüm yönetimi için React Router'ı ve periyodik durum (state) güncellemeleri için hook'ları (`useEffect`, `useState`) kullanan bileşen (component) odaklı bir React uygulamasıdır.
Temel Özellikler
- 01.CPU deltaları, Bellek/Takas alanı (Swap) kullanımı, ayrık Ağ I/O'su ve süreç (process) takibi dahil gerçek zamanlı OS telemetri çıkarımı
- 02.Birleşik bir Rust backend'i aracılığıyla çekirdek (kernel) farklılıklarını soyutlayan çapraz platform uyumluluğu (Windows, macOS, Linux)
- 03.Native sistem verilerini doğrudan izole React bileşenlerine yönlendiren Asenkron Süreçler Arası İletişim (IPC)
- 04.Sunum katmanı için Tauri'nin hafif WebView entegrasyonunu kullanan sıfır-Node.js backend mimarisi