Sizce böyle bir uygulamaya ihtiyaç var mı?

KadRR

80+
Katılım
31 Mart 2021
Mesajlar
75
Reaksiyon skoru
53
Selamlar herkese,

Her şeyden önce en baştan söyleyeyim: Ben yazılımcı değilim. Bu işin eğitimini almadım. Ama eskiden internet kafelerde gördüğümüz Üçgen Oyun Arşivi, Murkut oyun sistemi vb. her şeyin elinin altında olduğu o pratik sistemleri evimde kurma hayalim vardı.

Piyasayı denedim; Playnite oyunlarda iyi ama film/dizi tarafı eksik, Kodi medyada süper ama oyun tarafı bana hantal geldi. "Neden ikisinin en iyi yanlarını alıp, görsel olarak da gözümüzü doyuran, kullanımı yağ gibi akan tek bir sistem yok?" diye kafayı taktım.

İşten güçten arta kalan vakitlerimde, yanıma Yapay Zeka'yı (LLM) da alarak başladım kurcalamaya. İlk başta basit bir HTML arayüzü sanıyordum, meğer işin içine .exe çalıştırma, player gömme girince işler değişiyormuş :) Öğrene öğrene, deneye yanıla projeyi electron tabanlı KadoHub adında hatırı sayılır bir uygulamaya dönüştürdüm.

KadoHub'ın Kabaca Özellikleri:

Bir son kullanıcı olarak neye ihtiyacım varsa, ne eksikse onu ekledim. İşte uygulamanın şu anki yaptıkları:

  • Gömülü "Netflix Tarzı" Video Oynatıcı:Dışarıdan VLC veya başka player açmanıza gerek yok, uygulamanın içinde gömülü, arayüzü Netflix player'ına benzeyenözel bir oynatıcı yaptım.
    • Otomatik "Binge-Watch": Dizi izliyorsanız bölüm bitince jeneriği beklemeden otomatik diğer bölüme geçiyor.
    • Film Seri Modu: Eğer seri bir film izliyorsanız (Mesela Harry Potter 1), film bitince otomatik olarak serinin 2. filmini başlatıyor. Yerinizden kalkmanıza gerek yok.
  • Anlık Sistem Takibi & Hava Durumu:Oyuna veya filme dalmadan önce PC ne durumda görmek isterseniz diye; CPU, RAM ve Ekran Kartı (GPU) kullanım değerlerini anlık olarak arayüzde gösteriyor. Lokasyon bazlı hava durumu entegrasyonu da var; çok bir numarası yok ama eklerken can çekiştim :D.
  • Akıllı ve Toplu Kütüphane Ekleme:
    • Oyunlar: Klasörü gösteriyorsunuz, bin tane oyun olsa bile topluca ekliyor. Oyunu eklerken yanında bir çubuk var; oraya istediğiniz oyunun ismini tam olarak yazarsanız exe ismine göre değil de kutu içine göre metadata çekiyor. Bu metadata kaynağını isterseniz değiştirebilirsiniz. Normalde sistem .lnk ve .exe uzantılarının arkasını okuyacak şekilde programlı; kutu boş kalırsa exe veya kısayol ismine göre metadatayı çekiyor.
    • Filmler ve Diziler: Yine toplu seçimle klasörden çekip kütüphaneye diziyor, afişlerini buluyor.
    • Uygulamalar: Sık kullandığınız programları da topluca ekleyebiliyorsunuz.
  • Emülatöre Özel Data Çekme Sistemi (Internet Archive):Uygulama içine bir sistem kurdum; direkt Internet Archive veri tabanından oyunları bulup çekebiliyorsunuz. Sadece indirmekle kalmıyor, ZIP dosyasını sizin yerinize açıp, ilgili emülatöre hazır hale getiriyor. (Sistemin içinde RetroArch çekirdeği gömülü, ayar derdi yok).
  • Görsel Özelleştirme:
    • Film/Dizi izlerken modunuza göre tek tıkla Netflix, Prime Video veya Disney+ benzeri arayüze geçiş.
    • 15 Farklı Renk Teması ve 12 Farklı Ana Sayfa Tasarımı.
    • 10 Farklı Sidebar (Yan Menü) ve 15 Farklı Oyun Kapak Dizilimi (Coverflow, Grid vb.).
  • Diğer Hayat Kurtaranlar:
    • Otomatik Metadata: Oyun bilgilerini RAWG/GiantBomb/SteamGridDB'den; Film/Dizi bilgilerini TMDB'den otomatik çeker.
    • Entegre Torrent Arama: Tarayıcı açmadan 1337x, PirateBay gibi kaynaklarda arama yapabileceğiniz çubuk.
    • Müzik Keyfi: YouTube üzerinden müzik çekip, siz uygulamada gezerken arka planda çalabiliyor.
    • Geniş Ekran (Big Picture) Modu: steam benzeri çeşitlilik olsun diye ekledim.
    • Otomatik Yedekleme: Tüm ayarlarınızı ve veritabanınızı korur.
Sonuç:

Dediğim gibi, yazılımcı olmadığım için proje bu kadar kapsamlı hale gelince "debug" (hata ayıklama) süreçleri beni biraz zorluyor ama ortaya çıkan işi ben çok sevdim.

Sizce bu projeyi toplulukla paylaşmalı mıyım? Yani "Böyle bir şeye ihtiyacımız vardı, indirir kurarım, arşivimi dizerim" der misiniz?

Eğer sizden olumlu bir ışık alırsam, hatalarını temizleyip beta olarak ücretsiz yayınlamayı düşünüyorum. Yorumlarınız ve eleştirileriniz benim için çok değerli.

Not: Fazla resim kalabalığı olmaması adına hepsini koyamadım fakat çok fazla tema kombinasyonu var. Eğer isterseniz detaylarını ve diğer görselleri konuya daha sonra eklerim.

Birde isim konusunda varsa fikirlerinizi alabilirim <3

1765500421562.webp

1765500431992.webp

1765500439052.webp

1765500447668.webp

1765500453458.webp

1765500460365.webp

1765500474547.webp

1765500480276.webp

1765500485934.webp

1765500490351.webp

1765500496029.webp

1765500500157.webp

1765500505031.webp

1765500511767.webp

1765500518772.webp

1765500522838.webp

1765500534523.webp

1765500538153.webp

1765500543111.webp

1765500694572.webp
 

Ekler

  • 1765500464149.webp
    1765500464149.webp
    29.4 KB · Hit: 29
Yanlış anlamadıysam eğer bu platform Steam, Epic gibi platformlarda ki kütüphaneler + filmlerin bir olduğu bir şey mi yoksa ben mi yanlış anladım.
 
Yanlış anlamadıysam eğer bu platform Steam, Epic gibi platformlarda ki kütüphaneler + filmlerin bir olduğu bir şey mi yoksa ben mi yanlış anladım.
Hocam selamlar, evet steam ve epicteki oyunlarıda ekleyebilirsiniz ama yerel diskteki herhangi bir platforma baglı olmayan oyunlarıda bu uygulamanın kütüphanesine ekleyebilirsiniz. Uygulama tam olarak bilgisayarınızdaki tüm dijital arşivinizi (Steam/Epic kütüphaneleri dahil) ve yerel diskinizdeki bağımsız oyun .exelerini tek bir çatıda toplamayı hedefliyor. Eklediğiniz oyunların kapak görsellerini ve bilgilerini otomatik çekip size şık bir vitrin oluşturuyor.

Aynı durum film ve diziler için de geçerli; bilgisayarınızda kayıtlı video dosyalarını tarayıp size Netflix veya Disney+ benzeri, afişli ve açıklamalı bir izleme deneyimi sunuyor. Emülatörler ve yüklü programlar da dahil olmak üzere; tüm arşivinizi tek bir merkezden yönetebileceğiniz, görsel ve işlevsel bir yerel kütüphane gibi düşünebilirsiniz.
 
Dostum emeğine sağlık öncelike, vizyonuna, araştırmacı ruhuna laf yok, arayüz gerçekten piyasadaki çoğu ben launcherım diyen uygulamadan daha derli toplu ve modern duruyor. Özellikle Playnite'ın o ruhsuz veritabanı görüntüsü yerine Netflix vari bir UX sunman son kullanıcıyı tavlar, orası ayrı.

Ancak bazı konularda teknik açıdan ciddi endişelerim var, kesinlikle beni yanlış anlama, hevesin de kırılmasın aynı şekilde devam lakin;

1: Electron tabanlı olması demek, uygulamanın her açılışta Chromium motorunu sırtlayıp gelmesi demek. Sen buna bir de gömülü Player, Hava Durumu, sstem Takibi gibi sürekli polling yapan servisler eklemişsin. Bu uygulama arkada idle dururken bile ciddi bir RAM ve CPU cycle tüketecek. Ben Cyberpunk 2077 açtığımda sistemin tüm kaynaklarını oyuna vermek isterim, arkada süslü bir launcher'ın 800 MB - 1.5 GB RAM işgal etmesini değil. Optimizasyonu profesyonel yazılımcılar bile Electron'da zor tutturuyor, AI koduyla memory leak yaşaman neredeyse kaçınılmaz.

2: "Yazılımcı değilim, LLM ile yaptım" dedin, Yapay zeka kodu modüler yazmaz, anı kurtarır. Yarın öbür gün TMDB API politikasını değiştirdiğinde ya da entegre ettiğin emülatör çekirdeği güncellendiğinde, o binlerce satırlık kodun içinde hata ayıklamak senin için imkansız hale gelecek. Şu an çalışıyor olması, kararlı olduğu anlamına gelmez. Bir exception durumunda uygulamanın çökmesi işten bile değil.

3-Luncher'ın işi oyunu başlatıp aradan çekilmektir. İçine hava durumu, torrent arama motoru, CPU takibi eklemek uygulamayı Bloatwaree dönüştürür. Torrent entegrasyonu zaten başlı başına sıkıntılı ekstra, uygulamanı GitHub'a falan koyarsan DMCA yemen uzun sürmez.

Tavsiyem-Kodları bir an önce GitHub'da açık kaynak olarak paylaşman. "Ben yaptım bitti" dersen proje ölür, ama "Ben iskeleti kurdum, optimizasyon için destek bekliyorum" dersen community özellikle rust veya C++ bilenler bunu alıp Native bir uygulamaya çevirebilir veya Electron tarafını optimize edebilir. GGerçekten fıkır güzel, projenin daha başarılı olacağına inanıyorum. Tekrardan hatırlatayım, bu söylediklerimi kesinlikle yanlış anlamayın. İyi forumlar.
 
Hocam selamlar, evet steam ve epicteki oyunlarıda ekleyebilirsiniz ama yerel diskteki herhangi bir platforma baglı olmayan oyunlarıda bu uygulamanın kütüphanesine ekleyebilirsiniz. Uygulama tam olarak bilgisayarınızdaki tüm dijital arşivinizi (Steam/Epic kütüphaneleri dahil) ve yerel diskinizdeki bağımsız oyun .exelerini tek bir çatıda toplamayı hedefliyor. Eklediğiniz oyunların kapak görsellerini ve bilgilerini otomatik çekip size şık bir vitrin oluşturuyor.

Aynı durum film ve diziler için de geçerli; bilgisayarınızda kayıtlı video dosyalarını tarayıp size Netflix veya Disney+ benzeri, afişli ve açıklamalı bir izleme deneyimi sunuyor. Emülatörler ve yüklü programlar da dahil olmak üzere; tüm arşivinizi tek bir merkezden yönetebileceğiniz, görsel ve işlevsel bir yerel kütüphane gibi düşünebilirsiniz.
Güzelmiş hocam teşekkürler. Film konusunda bir eksik olabilir çünkü devir teknoloji devri kimse film indirip izlemiyor dolayısıyla HBO ve Stremio kullanıyorum bunları bağlama ve uygulama üzerinden oynatma gibi bir şansımız var mı ?
 
Dostum emeğine sağlık öncelike, vizyonuna, araştırmacı ruhuna laf yok, arayüz gerçekten piyasadaki çoğu ben launcherım diyen uygulamadan daha derli toplu ve modern duruyor. Özellikle Playnite'ın o ruhsuz veritabanı görüntüsü yerine Netflix vari bir UX sunman son kullanıcıyı tavlar, orası ayrı.

Ancak bazı konularda teknik açıdan ciddi endişelerim var, kesinlikle beni yanlış anlama, hevesin de kırılmasın aynı şekilde devam lakin;

1: Electron tabanlı olması demek, uygulamanın her açılışta Chromium motorunu sırtlayıp gelmesi demek. Sen buna bir de gömülü Player, Hava Durumu, sstem Takibi gibi sürekli polling yapan servisler eklemişsin. Bu uygulama arkada idle dururken bile ciddi bir RAM ve CPU cycle tüketecek. Ben Cyberpunk 2077 açtığımda sistemin tüm kaynaklarını oyuna vermek isterim, arkada süslü bir launcher'ın 800 MB - 1.5 GB RAM işgal etmesini değil. Optimizasyonu profesyonel yazılımcılar bile Electron'da zor tutturuyor, AI koduyla memory leak yaşaman neredeyse kaçınılmaz.

2: "Yazılımcı değilim, LLM ile yaptım" dedin, Yapay zeka kodu modüler yazmaz, anı kurtarır. Yarın öbür gün TMDB API politikasını değiştirdiğinde ya da entegre ettiğin emülatör çekirdeği güncellendiğinde, o binlerce satırlık kodun içinde hata ayıklamak senin için imkansız hale gelecek. Şu an çalışıyor olması, kararlı olduğu anlamına gelmez. Bir exception durumunda uygulamanın çökmesi işten bile değil.

3-Luncher'ın işi oyunu başlatıp aradan çekilmektir. İçine hava durumu, torrent arama motoru, CPU takibi eklemek uygulamayı Bloatwaree dönüştürür. Torrent entegrasyonu zaten başlı başına sıkıntılı ekstra, uygulamanı GitHub'a falan koyarsan DMCA yemen uzun sürmez.

Tavsiyem-Kodları bir an önce GitHub'da açık kaynak olarak paylaşman. "Ben yaptım bitti" dersen proje ölür, ama "Ben iskeleti kurdum, optimizasyon için destek bekliyorum" dersen community özellikle rust veya C++ bilenler bunu alıp Native bir uygulamaya çevirebilir veya Electron tarafını optimize edebilir. GGerçekten fıkır güzel, projenin daha başarılı olacağına inanıyorum. Tekrardan hatırlatayım, bu söylediklerimi kesinlikle yanlış anlamayın. İyi forumlar.
Kıymetli fikirleriniz için teşekkür ederim hocam.

sorularınıza gelirsek;

1)- Electron konusunda haklı çekinceleriniz var. bende zaten ilk gün aynı şeyi yaşadım


Uygulamayı ilk kez yaptığımda RAM tüketimi 1 GB civarındaydı.
Task Manager’da onu görünce 2–3 hafta boyunca kod eklemeyi bıraktım ve tamamen optimizasyona gömüldüm.

Bu süreçte uygulamaya şunları ekledim:
  • Lazy loading: Sadece aktif modüller yükleniyor
  • Deferred rendering: Startup çok hızlı
  • Cleanup fonksiyonları: Memory leak yok
  • Smart polling: CPU tüketimi düşük
  • Native SQLite: IO çok hızlı
  • Zustand: Minimal global state footprint
Şu an uygulama açıldığında:
  • Sadece arayüz geliyor
  • Ben nereye tıklarsam sadece o modül yükleniyor
Ve en önemlisi:
* Idle RAM tüketimi 120–180 MB
*RetroArch açıkken maksimum 300 MB civarı
Bu değer Playnite’ın bile altında. Benim de hedefim buydu.

2) “Yazılımcı değilim, LLM kullanıyorsun” kısmına gelirsek…

Yapay zekâya “hadi program yap” deyip geçmedim hocam.
Aksine projeyi en başından modüler mimariyle kurdum.
Monolitik yazarken yaşadığım kabus şöyleydi:
  • 2 modül ekliyorum → 3. çöküyor
  • 3 ekliyorum → 1. çalışmıyor
  • Hata ayıklamak işkenceye dönüyordu
Bu yüzden:
  • Film sistemi ayrı modül
  • Oyun sistemi ayrı modül
  • Player ayrı modül
  • Hava durumu sistemi ayrı modül
  • Emulator katmanı ayrı modül
Ne bozulursa direkt o modüle gidiyorum, projenin geri kalanı etkilenmiyor.
LLM burada sadece hızlandırıcı. Mimariyi ben kurdum, AI kodu ona göre yazıyor.

3) “Bloatware olur” konusundaki yorumunuza da katılmıyorum


Launcher’ın “sadece oyun açma” devri bitti.
Steam, Game Pass, GeForce Experience hepsi bugün:
  • Haber akışı
  • Sistem takibi
  • Overlay
  • Streaming
  • Cloud veri yönetimi
gibi şeyler ekliyor.
Benim amacım Playnite + Plex + Big Picture hibriti bir deneyim sunmak.
Yine de oyun başladığında:
  • Launcher minimize oluyor
  • Arka planda 120 MB sabit RAM ile kalıyor
  • CPU kullanımı yok denecek kadar düşük

    Yani oyuna müdahale eden hiçbir şey yok.
Torrent kısmı opsiyonel olacak zaten — GitHub’da DMCA yiyecek yapıya çevirmeyeceğim.

Son olarak: Bu projeyi tek başıma akşamları iş çıkışı yapıyorum 🙂


Projenin hedefi hiçbir zaman “Ben yaptım bitti” olmadı.
Ben iskeleti kurdum, stabil hale getirdim. Bundan sonra:
  • Optimizasyon
  • Native portlama fikri
  • Kod refactoring
  • Modül geliştirme
gibi konularda topluluk desteği kesinlikle önemli.
Zaten kısa süre içinde GitHub’da açık kaynak paylaşacağım.
Oradan isteyen geliştirebilir, optimize edebilir, Rust/C++ tarafı bile çıkar belki.
Tekrar yorumlarınız için teşekkür ederim hocam.
Eleştirileriniz heves kırmadı aksine projeyi daha da ciddiye almamı sağladı.
Mesajlar otomatik olarak birleştirildi:

Güzelmiş hocam teşekkürler. Film konusunda bir eksik olabilir çünkü devir teknoloji devri kimse film indirip izlemiyor dolayısıyla HBO ve Stremio kullanıyorum bunları bağlama ve uygulama üzerinden oynatma gibi bir şansımız var mı ?
HBO, Netflix, Disney+, Stremio gibi platformları uygulama içine gömme veya kendi playerımda oynatma teknik olarak mümkün değil hocam, çünkü hepsi Widevine DRM ile korunuyor ve video akışını sadece kendi lisanslı playerlarına veriyorlar; ben sadece içerikleri listeleyip tek tıkla resmi uygulama/tarayıcıya yönlendirme yapabilirim, oynatma kısmını yasal olarak override etmek imkânsız. Zaten uygulamadaki asıl odak noktam oyun ve emülatör tarafı, film/dizi bölümü daha çok kendi arşivi olanlara yönelik bir ekstra özellikti; kimse kullanmasa bile ben kullanırım mantığıyla eklediğim bir modül yani :)
 
Kıymetli fikirleriniz için teşekkür ederim hocam.

sorularınıza gelirsek;

1)- Electron konusunda haklı çekinceleriniz var. bende zaten ilk gün aynı şeyi yaşadım

Uygulamayı ilk kez yaptığımda RAM tüketimi 1 GB civarındaydı.
Task Manager’da onu görünce 2–3 hafta boyunca kod eklemeyi bıraktım ve tamamen optimizasyona gömüldüm.

Bu süreçte uygulamaya şunları ekledim:
  • Lazy loading: Sadece aktif modüller yükleniyor
  • Deferred rendering: Startup çok hızlı
  • Cleanup fonksiyonları: Memory leak yok
  • Smart polling: CPU tüketimi düşük
  • Native SQLite: IO çok hızlı
  • Zustand: Minimal global state footprint
Şu an uygulama açıldığında:
  • Sadece arayüz geliyor
  • Ben nereye tıklarsam sadece o modül yükleniyor
Ve en önemlisi:
* Idle RAM tüketimi 120–180 MB
*RetroArch açıkken maksimum 300 MB civarı
Bu değer Playnite’ın bile altında. Benim de hedefim buydu.

2) “Yazılımcı değilim, LLM kullanıyorsun” kısmına gelirsek…

Yapay zekâya “hadi program yap” deyip geçmedim hocam.
Aksine projeyi en başından modüler mimariyle kurdum.
Monolitik yazarken yaşadığım kabus şöyleydi:
  • 2 modül ekliyorum → 3. çöküyor
  • 3 ekliyorum → 1. çalışmıyor
  • Hata ayıklamak işkenceye dönüyordu
Bu yüzden:
  • Film sistemi ayrı modül
  • Oyun sistemi ayrı modül
  • Player ayrı modül
  • Hava durumu sistemi ayrı modül
  • Emulator katmanı ayrı modül
Ne bozulursa direkt o modüle gidiyorum, projenin geri kalanı etkilenmiyor.
LLM burada sadece hızlandırıcı. Mimariyi ben kurdum, AI kodu ona göre yazıyor.

3) “Bloatware olur” konusundaki yorumunuza da katılmıyorum

Launcher’ın “sadece oyun açma” devri bitti.
Steam, Game Pass, GeForce Experience hepsi bugün:
  • Haber akışı
  • Sistem takibi
  • Overlay
  • Streaming
  • Cloud veri yönetimi
gibi şeyler ekliyor.
Benim amacım Playnite + Plex + Big Picture hibriti bir deneyim sunmak.
Yine de oyun başladığında:
  • Launcher minimize oluyor
  • Arka planda 120 MB sabit RAM ile kalıyor
  • CPU kullanımı yok denecek kadar düşük

    Yani oyuna müdahale eden hiçbir şey yok.
Torrent kısmı opsiyonel olacak zaten — GitHub’da DMCA yiyecek yapıya çevirmeyeceğim.

Son olarak: Bu projeyi tek başıma akşamları iş çıkışı yapıyorum 🙂

Projenin hedefi hiçbir zaman “Ben yaptım bitti” olmadı.
Ben iskeleti kurdum, stabil hale getirdim. Bundan sonra:
  • Optimizasyon
  • Native portlama fikri
  • Kod refactoring
  • Modül geliştirme
gibi konularda topluluk desteği kesinlikle önemli.
Zaten kısa süre içinde GitHub’da açık kaynak paylaşacağım.
Oradan isteyen geliştirebilir, optimize edebilir, Rust/C++ tarafı bile çıkar belki.
Tekrar yorumlarınız için teşekkür ederim hocam.
Eleştirileriniz heves kırmadı aksine projeyi daha da ciddiye almamı sağladı.
Mesajlar otomatik olarak birleştirildi:


HBO, Netflix, Disney+, Stremio gibi platformları uygulama içine gömme veya kendi playerımda oynatma teknik olarak mümkün değil hocam, çünkü hepsi Widevine DRM ile korunuyor ve video akışını sadece kendi lisanslı playerlarına veriyorlar; ben sadece içerikleri listeleyip tek tıkla resmi uygulama/tarayıcıya yönlendirme yapabilirim, oynatma kısmını yasal olarak override etmek imkânsız. Zaten uygulamadaki asıl odak noktam oyun ve emülatör tarafı, film/dizi bölümü daha çok kendi arşivi olanlara yönelik bir ekstra özellikti; kimse kullanmasa bile ben kullanırım mantığıyla eklediğim bir modül yani :)
Anladım hocam gerçekten hoşuma gitti güzel olmuş ellerinize sağlık. Bu arada Atari tarzı eski oyunları nasıl oynuyorsunuz acaba :D
 
Anladım hocam gerçekten hoşuma gitti güzel olmuş ellerinize sağlık. Bu arada Atari tarzı eski oyunları nasıl oynuyorsunuz acaba :D
O kısım RetroArch üzerinden çalışıyor hocam. Atari başta olmak üzere NES, SNES, GB, GBA gibi çoğu eski sistemin çekirdeklerini zaten kendi içinde barındırıyor. İlk etapta JS tabanlı emülatörleri test etmiştim ama performans ve input gecikmesi tatmin etmedi; RetroArch ise bu işin standardı oldu artık. Gamepad tanıma, tuş atama, shader, latency ayarları hepsi hazır geliyor. Yani uygulama Atari oyunlarını RetroArch çekirdeği ile açıyor ve kullanıcı için kurulum derdi bırakmıyor.
 
Kıymetli fikirleriniz için teşekkür ederim hocam.

sorularınıza gelirsek;

1)- Electron konusunda haklı çekinceleriniz var. bende zaten ilk gün aynı şeyi yaşadım

Uygulamayı ilk kez yaptığımda RAM tüketimi 1 GB civarındaydı.
Task Manager’da onu görünce 2–3 hafta boyunca kod eklemeyi bıraktım ve tamamen optimizasyona gömüldüm.

Bu süreçte uygulamaya şunları ekledim:
  • Lazy loading: Sadece aktif modüller yükleniyor
  • Deferred rendering: Startup çok hızlı
  • Cleanup fonksiyonları: Memory leak yok
  • Smart polling: CPU tüketimi düşük
  • Native SQLite: IO çok hızlı
  • Zustand: Minimal global state footprint
Şu an uygulama açıldığında:
  • Sadece arayüz geliyor
  • Ben nereye tıklarsam sadece o modül yükleniyor
Ve en önemlisi:
* Idle RAM tüketimi 120–180 MB
*RetroArch açıkken maksimum 300 MB civarı
Bu değer Playnite’ın bile altında. Benim de hedefim buydu.

2) “Yazılımcı değilim, LLM kullanıyorsun” kısmına gelirsek…

Yapay zekâya “hadi program yap” deyip geçmedim hocam.
Aksine projeyi en başından modüler mimariyle kurdum.
Monolitik yazarken yaşadığım kabus şöyleydi:
  • 2 modül ekliyorum → 3. çöküyor
  • 3 ekliyorum → 1. çalışmıyor
  • Hata ayıklamak işkenceye dönüyordu
Bu yüzden:
  • Film sistemi ayrı modül
  • Oyun sistemi ayrı modül
  • Player ayrı modül
  • Hava durumu sistemi ayrı modül
  • Emulator katmanı ayrı modül
Ne bozulursa direkt o modüle gidiyorum, projenin geri kalanı etkilenmiyor.
LLM burada sadece hızlandırıcı. Mimariyi ben kurdum, AI kodu ona göre yazıyor.

3) “Bloatware olur” konusundaki yorumunuza da katılmıyorum

Launcher’ın “sadece oyun açma” devri bitti.
Steam, Game Pass, GeForce Experience hepsi bugün:
  • Haber akışı
  • Sistem takibi
  • Overlay
  • Streaming
  • Cloud veri yönetimi
gibi şeyler ekliyor.
Benim amacım Playnite + Plex + Big Picture hibriti bir deneyim sunmak.
Yine de oyun başladığında:
  • Launcher minimize oluyor
  • Arka planda 120 MB sabit RAM ile kalıyor
  • CPU kullanımı yok denecek kadar düşük

    Yani oyuna müdahale eden hiçbir şey yok.
Torrent kısmı opsiyonel olacak zaten — GitHub’da DMCA yiyecek yapıya çevirmeyeceğim.

Son olarak: Bu projeyi tek başıma akşamları iş çıkışı yapıyorum 🙂

Projenin hedefi hiçbir zaman “Ben yaptım bitti” olmadı.
Ben iskeleti kurdum, stabil hale getirdim. Bundan sonra:
  • Optimizasyon
  • Native portlama fikri
  • Kod refactoring
  • Modül geliştirme
gibi konularda topluluk desteği kesinlikle önemli.
Zaten kısa süre içinde GitHub’da açık kaynak paylaşacağım.
Oradan isteyen geliştirebilir, optimize edebilir, Rust/C++ tarafı bile çıkar belki.
Tekrar yorumlarınız için teşekkür ederim hocam.
Eleştirileriniz heves kırmadı aksine projeyi daha da ciddiye almamı sağladı.
Mesajlar otomatik olarak birleştirildi:


HBO, Netflix, Disney+, Stremio gibi platformları uygulama içine gömme veya kendi playerımda oynatma teknik olarak mümkün değil hocam, çünkü hepsi Widevine DRM ile korunuyor ve video akışını sadece kendi lisanslı playerlarına veriyorlar; ben sadece içerikleri listeleyip tek tıkla resmi uygulama/tarayıcıya yönlendirme yapabilirim, oynatma kısmını yasal olarak override etmek imkânsız. Zaten uygulamadaki asıl odak noktam oyun ve emülatör tarafı, film/dizi bölümü daha çok kendi arşivi olanlara yönelik bir ekstra özellikti; kimse kullanmasa bile ben kullanırım mantığıyla eklediğim bir modül yani :)
Valla hocam o zaman helal olsun, ters köşe yaptın beni. Electron ile 120 MB idle değerini cidden yakaladıysan büyük iş, piyasadaki çoğu "senior" yazılımcı o motoru o kadar optimize edemiyor, Chrome sekmesi gibi RAM sömürüyor hepsi.
Senin o "Native SQLite" ve modüler yapı hamlesi hayat kurtarmış belli ki. JSON ile uğraşsan patlardı o iş. Madem mimariyi sen kurdun, kod hamallığını AI yaptı, o zaman laf yok. GitHub linkini sal da bir mıncıklayalım, dediğin kadar stabilse Playnite'ı emekli ederiz. Takipteyim.
 
Valla hocam o zaman helal olsun, ters köşe yaptın beni. Electron ile 120 MB idle değerini cidden yakaladıysan büyük iş, piyasadaki çoğu "senior" yazılımcı o motoru o kadar optimize edemiyor, Chrome sekmesi gibi RAM sömürüyor hepsi.
Senin o "Native SQLite" ve modüler yapı hamlesi hayat kurtarmış belli ki. JSON ile uğraşsan patlardı o iş. Madem mimariyi sen kurdun, kod hamallığını AI yaptı, o zaman laf yok. GitHub linkini sal da bir mıncıklayalım, dediğin kadar stabilse Playnite'ı emekli ederiz. Takipteyim.
Hocam güzel yorumunuz için gerçekten teşekkür ederim.
projeye ilk başladığım günlerde JSON’la boğuşurken “acaba ai ile altından kalkarmıyız la bunun” diye düşündüğüm zamanlar oldu. Modüler yapıyı oturtana kadar defalarca çöktü , bozuldu , yeniden kurdum. Ama işin teknik tarafı kadar sizin gibi insanların böyle yapıcı geri dönüşleri motivasyonun yarısı oluyor. GitHub kısmı içinse bugün çalışmalara başladım torrent kısmını düzeltip 2-3 güne yüklemiş olurum
 
Hocam güzel yorumunuz için gerçekten teşekkür ederim.
projeye ilk başladığım günlerde JSON’la boğuşurken “acaba ai ile altından kalkarmıyız la bunun” diye düşündüğüm zamanlar oldu. Modüler yapıyı oturtana kadar defalarca çöktü , bozuldu , yeniden kurdum. Ama işin teknik tarafı kadar sizin gibi insanların böyle yapıcı geri dönüşleri motivasyonun yarısı oluyor. GitHub kısmı içinse bugün çalışmalara başladım torrent kısmını düzeltip 2-3 güne yüklemiş olurum
Rica ederim. JSON formatı, doğası gereği serileştirme ve ayrıştırma süreçlerinde işlemci yükünü artırır özellikle veri seti büyüdüğünde blocking i/o yaratarak uygulamanın tepki süresini ciddi oranda yükseltir. SQLite entegrasyonu, ilişkisel veritabanı yapısı ve indeksleme yetenekleri sayesinde veri erişim hızını optimize ederek bu darboğazı aşmanızı sağlamış.

Refactoring süreçleri ve mimariyi baştan kurgulamanız, projenin teknik borcunu temizlemek adına kritik bir adım. GitHub reposunu bekliyoruz; özellikle torrent modülünün yasal uyumluluk çerçevesinde revize edilmesi, projenin sürdürülebilirliği açısından doğru bir karar olacaktır.
 
Emeğine sağlık, çok güzel bir proje olmuş. Farklı dil seçenekleri eklersen senin yararına olur. Sadece akşamları iş çıkışı bir hobi olarak yapmanı ve bunu kodlamayı bilmeden yapmanı takdir ettim.
 
Emeğine sağlık, çok güzel bir proje olmuş. Farklı dil seçenekleri eklersen senin yararına olur. Sadece akşamları iş çıkışı bir hobi olarak yapmanı ve bunu kodlamayı bilmeden yapmanı takdir ettim.
Hocam çok teşekkür ederim,

Şu an zaten aktif olarak üzerinde çalışıyorum. GitHub’a koymadan önce İngilizce ve Almanca dil desteğini büyük ihtimalle eklemiş olacağım. Devamında da Gemini API key entegrasyonu ile çok daha fazla dili dinamik şekilde desteklemeyi planlıyorum.
 
Yeni mesajlar Yeni Konu Aç  

   

SON KONULAR

Forum istatistikleri

Konular
1,172,926
Mesajlar
10,571,684
Üyeler
186,264
Son üye
radiuxs
Geri
Top