GitHub Haritası
(github.com/anvaka)-
GitHub proje haritası
-
400.000'den fazla GitHub projesini görselleştiren bir harita. Her nokta bir projeyi temsil eder ve ortak stargazer sayısı fazla olan projeler birbirine daha yakın konumlanır.
-
Nasıl yapıldı?
-
İlk adımda, hangi kullanıcının hangi depoya yıldız verdiğini toplamak için GitHub etkinlik olaylarının herkese açık veri kümesi kullanıldı. Ocak 2020 ile Mart 2023 arasındaki olaylar dikkate alınarak 350 milyondan fazla yıldız verisi elde edildi.
-
İkinci adımda, her depo çifti arasındaki tam Jaccard benzerliği hesaplandı. Bu işlem 24GB RAM'e sahip kişisel bir bilgisayarda zorlayıcıydı, ancak 512GB RAM'li bir AWS EC2 instance'ı kullanılarak birkaç saat içinde tamamlandı.
-
Üçüncü adımda, depoları gruplamak için bazı kümeleme algoritmaları kullanıldı. En çok Leiden kümelemesi tercih edildi ve 1000'den fazla küme oluşturuldu.
-
Dördüncü adımda, kümeler içindeki düğümlerin yerleşimini hesaplamak için
ngraph.forcelayoutkullanıldı; ayrıca kümelerin genel yerleşimini elde etmek için ayrı bir yapılandırma uygulandı. -
Beşinci adımda ise harita render edildi. Önceki projelerden farklı olarak, veriler GeoJSON biçimine dönüştürülmek için maplibre ile işlendi ve tippecanoe kullanılarak tile'lar üretildi; böylece gezinme ortamı kuruldu.
-
-
Ülke isimleri
- Birçok ülke etiketi ChatGPT'nin yardımıyla oluşturuldu. Hatalı bir kısım varsa sağ tıklayıp düzeltmeniz ve bir pull request göndermeniz memnuniyetle karşılanır.
-
Geocoding?
- Arama kutusunu uygulamak için tüm depolar basitçe dump edilip ilk harfe (veya yazarın adına) göre indekslendi. Arama kutusuna
ayazarsanız,aile başlayan tüm depolar bulunur ve istemci tarafında bir fuzzy matcher ile gösterilir.
- Arama kutusunu uygulamak için tüm depolar basitçe dump edilip ilk harfe (veya yazarın adına) göre indekslendi. Arama kutusuna
-
Tasarım
- Bu projenin veri temsilini, harita tasarımından daha çok beğeniyorum. Harita tasarımı konusunda deneyiminiz ya da harika bir tasarım vizyonunuz varsa, lütfen çekinmeden paylaşın. Veriye uygun bir stil aranıyor.
-
Destek
-
Bu projenin faydalı olduğunu düşünüyorsanız destek grubuna katılın. Projeyle ilgili yardıma ihtiyacınız varsa veya sorularınız varsa issue açın ya da Twitter üzerinden iletişime geçin.
-
Projeyi başlatmama yardımcı olan arkadaşlarıma ve destekçilerime teşekkür ederim: Ryan, Andrey, Alex, Dmytro. Harikasınız!
-
Bu projenin logosunu hazırlayan sevgili kızım Louise'e teşekkür ederim. Seni seviyorum!
-
Bu projeyi mümkün kılan tüm açık kaynak katkıcılarına sonsuz teşekkürler. Devlerin omuzlarında duruyorum.
-
-
Lisans
- Bu depo MIT lisansı altında yayımlanmıştır. Verileri kendi çalışmanızda kullanırsanız, lütfen bu projeye atıfta bulunun.
1 yorum
Hacker News görüşleri
Rustland'ın küçük olmasına ve Clouderra'nın yalnızca bir haftalık olmasına şaşıran bir görüş var
Belirli projeleri arama özelliği olmadan yalnızca haritaya bakarak bulmanın bir mini oyun gibi eğlenceli olduğu söyleniyor
torvalds/linux'un Fronterra'da yer alması ve JS projeleri, awesome-X listeleri ve frontend checklist'in yanında bulunması ilginç
Among Us bölümünün adının "Sussex" olması komikti
Ülke/harita metaforunun en iyi tercih olup olmadığı konusunda kafa karışıklığı var
"Homelabia" gibi sıra dışı bir isim seçimi eğlenceli bulundu
Daha önce de bir tartışma vardı
Depolar arasındaki bağlantıların nasıl belirlendiği merak ediliyor