개발자라면 누구나 자신의 GitHub 프로필을 다채롭게 꾸미고 싶어합니다. 그러나 기존의 GitHub 프로필은 오픈소스 프로젝트에 대한 기여도만을 반영하고 있어서, 개인의 전체 기여도를 제대로 보여주지 못하는 경우가 많습니다. 특히, 개인의 비공식적인 기여가 많은 경우에는 더욱 그렇죠. 이러한 문제를 해결하기 위해 등장한 프로젝트가 바로 github-stats입니다. 이 프로젝트는 GitHub 통계를 시각적으로 멋지게 표현하여, 프로필을 한층 더 돋보이게 할 수 있는 기능을 제공합니다.

주요 기능과 특징

  • 다양한 통계 수집: 이 도구는 개인의 오픈소스 기여뿐만 아니라, 비공식적인 개인 리포지토리에서의 기여도 함께 수집하여 보여줍니다.
  • 자동화된 이미지 생성: GitHub Actions를 활용하여, 사용자가 직접 리포지토리를 클론하고 통계 이미지를 생성합니다. 이 과정은 서버를 구축할 필요 없이 자동으로 이루어집니다.
  • 다크모드 및 라이트모드 지원: 생성된 이미지는 GitHub의 테마에 맞춰 자동으로 변경됩니다. 이를 통해 사용자들은 프로필을 보다 세련되게 꾸밀 수 있습니다.
  • JSON 파일로 데이터 출력: 생성된 통계는 JSON 파일로도 출력되어, 추가적인 데이터 분석에도 활용할 수 있습니다.

설치 및 기본 사용법

1. 설치하기

먼저, GitHub 리포지토리를 클론하여 프로젝트를 사용할 준비를 합니다. 아래 명령어를 사용하여 리포지토리를 클론합니다.

git clone https://github.com/jstrieb/github-stats.git
cd github-stats

2. GitHub Personal Access Token 생성하기

GitHub API를 통해 통계를 수집하기 위해서는 Personal Access Token이 필요합니다. GitHub에서 토큰을 생성하는 방법은 다음과 같습니다:

  1. GitHub 계정에 로그인한 후, 오른쪽 상단의 프로필 사진을 클릭하고 "Settings"를 선택합니다.
  2. 좌측 메뉴에서 "Developer settings"를 클릭한 후, "Personal access tokens"을 선택합니다.
  3. "Generate new token"을 클릭하고, 필요한 권한(예: repo, user 등)을 설정한 후, 토큰을 생성합니다.

3. GitHub Actions 설정하기

리포지토리의 .github/workflows 디렉토리에 있는 기본 템플릿을 수정하여 GitHub Actions를 설정합니다. 아래와 같은 내용을 가진 YAML 파일(main.yml)을 작성합니다.

name: Generate GitHub Stats

on:
  schedule:
    - cron: '0    '  # 매 시간마다 실행
  workflow_dispatch:

jobs:
  build:
    runs-on: ubuntu-latest

    steps:
      - name: Checkout Repository
        uses: actions/checkout@v2

      - name: Generate Stats
        run: |
          zig build
          # 필요한 경우 추가 명령어를 여기에 작성

4. 기본 사용법

이제 모든 설정이 완료되었습니다. 아래 명령어로 GitHub Actions를 수동으로 실행하여 통계 이미지를 생성할 수 있습니다.

git commit -m "Update stats"
git push origin main

이제 GitHub Actions가 실행되어 통계 이미지를 생성하게 됩니다. 생성된 이미지는 리포지토리의 README.md에 추가하여 사용할 수 있습니다.

실무에서의 활용 시나리오

이 도구는 개발자들이 개인 프로젝트나 오픈소스 기여도를 한눈에 보여줄 수 있도록 돕습니다. 예를 들어, 포트폴리오 웹사이트에 GitHub 프로필을 연결할 때, 이 통계 이미지를 사용하여 자신의 기술과 기여를 강조할 수 있습니다. 또한, 팀원들과의 협업에서 자신이 어떤 기여를 했는지를 시각적으로 보여줄 수 있어, 효과적인 커뮤니케이션 도구로도 활용됩니다.

비슷한 도구와의 비교

비슷한 도구로는 shields.io와 GitHub Readme Stats가 있습니다. 그러나 이 도구들은 공개 리포지토리의 통계만을 제공하는 반면, github-stats는 비공식 리포지토리의 데이터도 포함하여, 보다 포괄적인 통계 이미지를 생성할 수 있다는 점에서 차별화됩니다.

마무리 및 추천 대상

GitHub 통계를 시각화하여 프로필을 더욱 매력적으로 만들고 싶은 개발자들에게 이 프로젝트를 적극 추천합니다. 또한, 비공식적인 기여도 함께 포함하여 자신만의 독특한 통계를 보여주고 싶은 분들에게도 적합합니다.

자세한 내용은 GitHub 리포지토리에서 확인하세요. 지금 바로 나만의 GitHub 통계 이미지를 생성해보세요!