Github 커밋 검색기

3396 단어 redishackathon

내 제출물 개요



뭐?
커밋 히스토리에서 메시지를 찾는 기본 프로젝트입니다.

왜요?
이전에 작성한 중요한 메시지를 찾고 싶다면 커밋에서 정보를 가져오는 앱을 만들 생각이었습니다.

어떻게?
정보를 얻기 위해 Github-API를 사용했고 Redis를 로컬에서 실행하기 위해 Docker를 사용했습니다.

개선 아이디어
  • GitHub Actions를 사용하여 자동으로 정보 업데이트
  • 더 많은 데이터를 저장하고 프런트엔드에서 이 데이터를 필터링합니다
  • .
  • Redis의 고급 캐싱을 사용하여 성능 향상

  • 제출 카테고리:



    MERN/RERN(Redis,Express,React,Node) 매버릭스

    사용 언어


  • 자바스크립트

  • 기술 스택


  • 데이터(데이터베이스)를 저장하는 Redis
  • 데이터를 검색하는 Redis(검색 엔진)
  • 익스프레스(백엔드)가 있는 노드
  • 반응(프론트엔드)

  • 코드 링크




    요르다니스 / 커밋 검색자






    커밋 검색자


    리포지토리에서 커밋을 검색하는 소규모 프로젝트입니다.

    예시



    작동 방식


    데이터 저장 방법:


    서버가 로드된 후 데이터는 API 끝점에서 Redis 데이터베이스에 저장됩니다.
    다음과 같은 몇 가지 단계가 있습니다.
  • 다음과 같이 스키마를 생성합니다.

  • const commitSchema = new Schema(Commit, {
    
        message: { type: 'text' },
    
        author: { type: 'string' },
    
        url: { type: 'string' }
    
    })
    
  • 저장소에서 데이터 가져오기:

  • const response = octokit.request('GET https://api.github.com/repos/{owner}/{repo}/commits', {
    
        owner: process.env.GITHUB_OWNER,
    
        repo: process.env.GITHUB_REPO
    
    });
    
  • Redis에 데이터 저장

  • response.then(function(result) {
    
        result.data.map((commit) => {
    
            saveDataToRedis(
    
                commit.commit.message,
    
                commit.commit.author.name,
    
                commit.html_url,
    
            )
    
        })
    
    })
    
  • Redis에서 인덱스 생성:

  • await  commitRepository.createIndex()
    

    데이터 액세스 방법:


    데이터는 엔드포인트를 통해 서버에서 프런트엔드로 로드됩니다. 여기에서 모든 커밋을 보고 데이터를 검색할 수 있습니다.
  • 모든 데이터 가져오기(Redis 저장소의 search() 함수 사용)

  • app.get('/commits', async (req, res) => {
    
        const commits = await commitRepository.search().return.all();
    
        res.json(commits)
    
    })
    
  • 검색 메시지…


  • View on GitHub

    라이선스: MIT

    추가 리소스/정보



    Github-Api
    Docker-Image

    협력자



    솔로 프로젝트
  • Redis를 다중 모델 데이터베이스로 사용하기 위한 클라이언트 라이브러리인 Redis OM을 확인하십시오.
  • RedisInsight을 사용하여 Redis에서 데이터를 시각화합니다.
  • free Redis database에 가입하세요 .
  • 좋은 웹페이지 즐겨찾기