400,000개 이상의 GitHub 프로젝트를 시각화한 지도임. 각 점은 하나의 프로젝트를 나타내며, 공통의 stargazer가 많은 프로젝트일수록 서로 가까이 위치함. 첫 번째 단계에서는 GitHub 활동 이벤트의 공개 데이터 세트를 사용하여 어떤 사용자가 어떤 저장소에 별을 주었는지 데이터를 수집함. 2020년 1월부터 2023년 3월까지의 이벤트를 고려하여 3억 5천만 개 이상의 별 데이터를 얻음. 두 번째 단계에서는 각 저장소 간의 정확한 Jaccard 유사도를 계산함. 24GB RAM의 개인 컴퓨터로는 처리하기 어려웠으나, 512GB RAM의 AWS EC2 인스턴스를 사용하여 몇 시간 만에 처리함. 세 번째 단계에서는 몇 가지 클러스터링 알고리듬을 사용하여 저장소를 그룹화함. Leiden 클러스터링을 가장 선호하여 1000개 이상의 클러스터를 생성함. 네 번째 단계에서는 ngraph.forcelayout을 사용하여 클러스터 내 노드의 레이아웃을 계산하고, 별도의 설정으로 클러스터의 전역 레이아웃을 얻음. 다섯 번째 단계에서는 지도를 렌더링함. 이전 프로젝트와 달리 maplibre를 사용하여 데이터를 GeoJSON 형식으로 변환하고, tippecanoe로 타일을 생성하여 브라우징 환경을 구성함. 이 프로젝트가 유용하다고 생각되면 지원 그룹에 참여해주길 바람. 프로젝트에 대한 도움이 필요하거나 질문이 있다면 이슈를 열거나 트위터로 연락해주길 바람. 프로젝트를 시작하는 데 도움을 준 친구들과 지지자들에게 감사함: Ryan, Andrey, Alex, Dmytro. 당신들은 대단함! 이 프로젝트의 로고를 만들어 준 사랑하는 딸 Louise에게 감사함. 사랑함! 이 프로젝트를 가능하게 한 모든 오픈 소스 기여자들에게 무한한 감사함. 거인의 어깨 위에 서 있음.
GitHub 프로젝트 지도
어떻게 만들어졌는가?
국가 이름
지오코딩?
디자인
지원
라이선스