- Katılım
- 1 Ağustos 2026
- Mesajlar
- 52
- Elmaslar
- 45
- Puan
- 295
- Yaş
- 21
- Konum
- Turkey
- Minecraft
- Zonely
Discord:
Zonely
Geçtiğimiz günlerde Zonely'nin yeni MVC tabanlı tema geliştirme sistemini duyurmuştuk.
Artık geliştiriciler hazırladıkları temaları Zonely üzerinde listeleyebilir, ücretli temalarda kendi satış bağlantılarını kullanabilir ve satış sonrasında kullanıcıya alan adına özel lisans tanımlayabilir.
Yeni MVC yapısında her tema kendi proje yapısı içerisinde çalışır. Geliştirici ana sistem dosyalarını değiştirmek yerine yalnızca kendi temasına ait şablonlar, CSS ve JavaScript dosyaları üzerinden ilerleyebilir.
- Tema adı, açıklama, sürüm, yapımcı bilgileri, Light/Dark desteği, önizleme görselleri ve yayınlama ayarları aynı proje üzerinden yönetilebilir.
Hazırlanan temalar ücretsiz veya ücretli olarak listelenebilir. Ücretli bir tema doğrudan Zonely üzerinden satın alınmaz. Geliştirici kendi satın alma bağlantısını ekler ve kullanıcı satın alma işlemi için bu bağlantıya yönlendirilir.
- Satış tamamlandıktan sonra geliştirici ilgili kullanıcıya lisansını tanımlayabilir.
- Tema üzerinde daha sonra değişiklik yapıldığında da yeniden ayrı bir proje açmak gerekmez. Aynı tema üzerinden yeni sürüm yayınlanarak geliştirmeye devam edilebilir.
Geliştirici oluşturduğu lisansları kendi panelinden takip edebilir. Lisansın hangi tema için oluşturulduğu, hangi alan adına tanımlandığı ve aktif olup olmadığı buradan görülebilir.
Koruma sistemi tamamen isteğe bağlı çalışır. Geliştirici dilerse temasını normal şekilde dağıtabilir, dilerse koruma seçeneklerinden birini veya birkaçını aktif edebilir.
Şu anda koruma tarafında şu seçenekler yer alır:
- Kod Küçültme: CSS ve JavaScript dosyalarının dağıtım sürümü küçültülür. Gereksiz boşluklar ve geliştirme sırasında kullanılan okunabilir yapı kaldırılarak daha küçük bir çıktı hazırlanır.
- JavaScript Koruması: Geliştiricinin üzerinde çalıştığı açık kaynak dosyanın birebir aynısını kullanıcıya vermek yerine ayrı bir dağıtım çıktısı hazırlanabilir. Kod yapısı küçültülebilir, isimler değiştirilebilir ve kaynak farklı parçalara ayrılabilir.
- CSS Koruması: Geliştiricinin kullandığı açık stil dosyasının birebir dağıtılması yerine işlenmiş çıktı kullanılabilir.
- Lisans İzi: Hazırlanan dağıtımı ilgili lisansla ilişkilendirir. Bir paket daha sonra izinsiz şekilde farklı bir yerde ortaya çıkarsa hangi lisans için hazırlanan sürümden çıktığının bulunmasını kolaylaştırır.
Buradaki sistemi sadece dosya adını değiştirmek veya JavaScript'i minify etmek olarak düşünmemek gerekir. Geliştirici kendi normal ve düzenlenebilir kaynak dosyalarıyla çalışmaya devam eder. Korumalı sürüm hazırlanırken seçilen CSS ve JavaScript kaynakları dağıtım için ayrıca işlenir.
JavaScript tarafında küçültme, isim değiştirme, kod yapısını karıştırma ve kaynakları parçalara ayırma gibi işlemler uygulanabilir. CSS tarafında da açık kaynak dosya yerine işlenmiş sürüm kullanılabilir. Bunun yanında hazırlanan dağıtım lisans ve alan adıyla ilişkilendirilir.
Web üzerinde çalışan JavaScript veya CSS'i yüzde yüz görünmez hale getirdiğimizi söylemiyoruz. Tarayıcı bir şeyi çalıştırıyorsa çalışma çıktısı doğal olarak incelenebilir. Bizim yaptığımız şey geliştiricinin temiz kaynak projesini doğrudan dağıtmamak ve kullanıcıya verilen sürümü lisans kontrolüyle birlikte hazırlamaktır.
Bir kullanıcı tarayıcının İncele bölümünü açtığında HTML çıktısını görebilir, yüklenen dosyalara bakabilir veya çalışma kaynaklarını inceleyebilir. Web tarafında bunun tamamen kapatılması zaten mümkün değildir. Fakat burada görülen çalışma çıktısı ile geliştiricinin üzerinde çalıştığı temiz kaynak dosyaların aynı olması gerekmez.
Asıl önüne geçmeye çalıştığımız durum, bir kullanıcının tema dosyalarını alıp başka bir kişiye göndermesi ve aynı paketin farklı bir alan adında hiçbir lisans kontrolü olmadan kullanılmaya devam etmesidir. Dosyaların elde edilmiş olması tek başına başka bir alan adı için geçerli lisans oluşturmaz.
Koruma aktif olduğunda geliştiricinin kendi proje klasörünün birebir kopyasını kullanıcıya vermek yerine ilgili lisans için hazırlanmış ayrı bir dağıtım kullanılabilir. Korunması seçilen CSS ve JavaScript kaynakları bu aşamada işlenir ve lisans bilgisiyle ilişkilendirilir. Geliştirici ise kendi temiz proje dosyaları üzerinden çalışmaya ve yeni sürümler çıkarmaya devam eder.
Tema yayınlandıktan sonra geliştirme süreci bitmez. Yeni özellik eklendiğinde, tasarım değiştirildiğinde veya bir hata giderildiğinde geliştirici aynı proje üzerinden yeni sürüm yayınlayabilir. Böylece her güncellemede yeniden tema oluşturmak yerine mevcut proje üzerinden devam edilebilir.
Yeni MVC sistemiyle birlikte tema tarafında artık tema oluşturma, şablon geliştirme, harici CSS/JavaScript bağlantıları, listeleme, güncelleme, lisans yönetimi, alan adı doğrulaması ve isteğe bağlı koruma seçenekleri aynı yapı üzerinden yönetilebilir.
Amacımız internette görünen bir tasarımın hiçbir şekilde kopyalanamayacağını iddia etmek değildir. Asıl hedefimiz geliştiricinin hazırladığı kaynak projenin doğrudan dağıtılmasını ve tek bir lisansın farklı alan adlarında kontrolsüz şekilde kullanılmasını mümkün olduğunca engellemektir.
Tema geliştirmek isteyen geliştiriciler kendi projelerini Zonely üzerinden oluşturup listelemeye başlayabilirler.