FindGS는 입력 텍스트와 README, 이름, 주제, 설명과 일치하는 별표 표시된 저장소를 Github에서 검색합니다.
동기 부여
어쩌면 언젠가는 그것을 사용할 수 있도록 github에 별표 표시된 저장소가 많이 있을 것입니다.
별표 표시된 저장소를 점점 더 많이 쌓으면 별표 표시된 저장소에서 원하는 저장소를 찾기가 어려울 수 있습니다.
왜냐하면 github 사이트는 README에서 검색하는 것을 공식적으로 지원하지 않기 때문입니다.
FindGS 는 저장소 검색을 위해 github 토큰을 사용하는 대화형 CLI입니다.
FindGS는 내부적으로 DB를 캐싱하고 로컬에서 인덱싱을 수행합니다. Github API는 시간당 5000개로 제한되어 있으므로 더 높은 성능의 캐싱 및 검색을 위한 무언가가 필요합니다.
따라서 처음 실행하면 캐싱 및 인덱싱을 위해 부팅 속도가 다소 느려질 수 있습니다.
그리고 FindGS는 실행 시 1시간 간격으로 캐시된 데이터를 업데이트합니다.
별표 표시된 저장소가 5000개가 넘는 경우 나머지 저장소를 캐싱하기 위해 1시간 간격으로 findgs를 실행해야 합니다.(Github API는 시간당 5000개로 제한됩니다.)
결과적으로 별표 표시된 모든 리포지토리는 캐싱 DB 및 인덱싱을 로컬에 저장할 수 있습니다.
Golang을 사용하여 구현되었습니다.
github 개인 액세스 토큰 이 필요합니다. (단, 토큰의 범위는 필수가 아닙니다.)
이 토큰은 전역 환경을 설정하거나 findgs에 전달되어야 합니다.
# ex 1)
$ export GITHUB_TOKEN=your-github-token # .zshrc or .bash_profile
$ findgs run
# ex 2)
$ findgs run -t your-github-token
Mac을 설치하고 싶다면 Homebrew 를 사용하세요. 또한 릴리스 에서 다운로드할 수도 있습니다.
# mac
$ brew tap gjbae1212/findgs
$ brew install findgs
# linux
$ wget https://github.com/gjbae1212/findgs/releases/download/v1.0.5/findgs_1.0.5_Linux_x86_64.tar.gz
# window
$ wget https://github.com/gjbae1212/findgs/releases/download/v1.0.5/findgs_1.0.5_Windows_x86_64.tar.gz
FindGS 는 현재 다음 기능을 지원합니다:
findgs run
findgs clear
Github에서 별표 표시된 저장소를 검색하려면 대화형 CLI를 실행하세요.
# 1)
$ findgs run # need to `export GITHUB_TOKEN=your-token`
# 2)
$ findgs run -t your-github-token
대화형 CLI는 현재 다음 명령을 지원합니다.
1. 검색
이 명령은 입력 텍스트를 사용하여 별표 표시된 저장소를 검색합니다. 또한 와일드카드 검색을 지원합니다.
>> search [searhing text(ex cli tool, hello * ...)]
2. 오픈
이 명령은 선택한 저장소를 브라우저에 표시합니다.
>> open name [searched repositories name]
>> open num [searched column num]
3. 목록
이 명령은 최근 검색된 결과를 보여줍니다.
>> list
4. 점수
이 명령어는 해당 점수와 같거나 높은 저장소를 검색할 수 있는 점수를 설정합니다.( 0 <= 점수)
# default score 0.1
>> score 0.5 # change score to 0.5
5. 출구
이 프로그램.
>> exit
로컬에서 캐시된 db 및 인덱싱된 데이터를 삭제합니다.
$ findgs clear
이 프로젝트는 MIT를 따르고 있습니다.