Veri ve yöntem
Kaynaklar
- GitHub REST API, depo araması.
topic:hugo-theme,topic:astro-themevetopic:jekyll-themearamaları yıldıza göre sıralanır. Ölçüm gününde bu etiketleri taşıyan depo sayısı Hugo için 1.686, Astro için 267, Jekyll için 1.761. Çatallar (fork) ve “awesome” türü liste depoları ayıklanır. - GitHub REST API, commit araması. Ayrıntılı ölçülen her tema için ana dala son bir yılda giren commit sayısı ve son commit tarihi alınır. Bu bilgi 200 temada mevcut.
- Hugo resmî tema galerisi. Hugo ekibinin galeriyi oluşturduğu
gohugoio/hugoThemesSiteBuilderdeposundakithemes.txtlistesi (612 kayıt). - GitHub Pages eklenti listesi.
github/pages-gemdeposundaki izin listesi (20 eklenti) ve GitHub Pages’in kullandığı Jekyll sürümü (3.10.0). - Depo dosyaları. Dosya listesi jsDelivr’in GitHub aynasından, yapılandırma dosyaları (
theme.toml,package.json,Gemfile,_config.yml) raw.githubusercontent.com’dan okunur. 190 temada dosya listesi alınabildi. - Güncel sürümler. Hugo için GitHub sürüm sayfası (0.168.0), Astro için npm (7.4.2), Jekyll için RubyGems (4.4.1).
Gece güncellemesi
Güncelleme betiği her gece çalışır. Kimlik doğrulamasız GitHub API sınırlarına uyar (arama için dakikada 10 istek), istekler arasında bekler ve kendini websitetema.online data update olarak tanıtır. Commit ve dosya bilgisi yalnızca deponun son push tarihi değiştiğinde ya da kayıt 10 günden eskiyse yeniden çekilir. Yeni veri belirli kontrollerden geçmezse (tema sayısında sert düşüş, eksik commit verisi gibi) eski veri korunur ve site önceki ölçümle kalır.
Hangi temalar ayrıntılı ölçülüyor
Her üreticide yıldız sırasına göre ilk temalar: Hugo 80, Astro 60, Jekyll 60. Bu temaların her biri için ayrı bir sayfa vardır. Listenin devamındaki temalar üretici sayfalarında kısa satır olarak gösterilir.
Bakım durumu eşikleri
- Aktif: ana dala son commit 90 gün içinde.
- Yavaşladı: son commit 91 gün ile 1 yıl arasında.
- Durgun: son commit 1 ile 2 yıl arasında.
- Terk edilmiş görünüyor: 2 yıldan uzun süredir commit yok.
- Arşivlenmiş: depo sahibi depoyu GitHub’da arşivlemiş.
Neden push tarihi değil de commit? GitHub’ın verdiği pushed_at alanı herhangi bir dala yapılan gönderimi kapsar. Bağımlılık botlarının açtığı dallar bu tarihi güncel tutar ama temanın ana dalında hiçbir şey değişmemiş olabilir.
Lisans
GitHub’ın deponun lisans dosyasından tanıdığı SPDX kimliğini kullanırız. GitHub bir dosyayı tanıyamazsa “tanınmayan lisans”, hiç dosya yoksa “lisans yok” yazarız. Lisans açıklamaları genel bilgidir.
Türkçe dil dosyası ve teknik kontroller
Türkçe desteğini dosya adlarından tespit ederiz: Hugo’da i18n/tr.*, Astro’da çeviri klasörlerindeki tr dosyaları, Jekyll’da _data/locales, _i18n ve _data/ui-text.yml içindeki tr anahtarı. Hugo’da Sass dosyası, go.mod ve en düşük sürüm; Astro’da package.json’daki Astro sürümü, entegrasyonlar ve Tailwind; Jekyll’da Gemfile’daki Jekyll sürümü ve _config.yml’deki eklentilerin GitHub Pages izin listesine uyumu kontrol edilir.
Bilinen sınırlamalar
- Konu etiketi koymayan ya da GitHub dışında (GitLab, Codeberg) yayımlanan temalar listeye girmez.
- Açık konu sayısı, GitHub’ın API’de verdiği gibi açık çekme isteklerini de içerir.
- Dosya listesi jsDelivr önbelleğinden geldiği için en son commit’in birkaç saat gerisinde kalabilir.
- Yıldız sayısı bir ilgi göstergesidir, kalite ölçüsü değildir.
Bir ölçümün yanlış olduğunu düşünüyorsanız bize yazın.