0. 프로젝트 개요
프로젝트 배경
⛳ Codewars 문제를 풀면 자동으로 깃헙에 업로드해주는 프로그램을 만들자
Leethub라는 확장 프로그램이 있다.
Leetcode에서 문제를 풀면 그 내용을 깃허브에 자동으로 커밋해주는 프로그램이다.
써보니 편하더라. 매번 Readme 업데이트하고, 코드를 커밋할 필요가 없어진 것이 얼마나 편한지 모른다. 문제를 수정할 때마다 잔디가 진해지는 것은 덤이다 ^^
나는 Codewars를 푼다. Codewars에도 비슷한 프로그램이 있었으면 좋겠지만 없었다. 그래서 만들기로 했다. Codewars 문제를 풀면 자동으로 깃헙에 올려주는 프로그램을 만들자!
현재는 푼 문제를 이렇게 관리하고 있다. 매우 귀찮다.
무엇을 만들 것인가?
Git에 어떤 프로그램을 이용하여 업로드를 할 것인가?
- 확장 프로그램을 만들어서 업로드한다. (Leethub처럼)
- Github action을 이용하여 업로드한다.
1번의 경우는 Leethub라는 예제도 있고, 이전에 확장프로그램을 살짝 건드려보기도 해서 더 편할 것 같다. 잘 만들면 배포하기도 쉽고.
2번의 경우는 확장프로그램을 이용하는 것보다 업로드하는 방법이 간단할 것 같은 느낌이다. 깃헙 자체에서 제공하는 액션을 이용하는게 더 편하지 않을까? (예: YES24의 IT 신간 도서 40개를 주기적으로 확인하는 Github Action 만들기 )
어떤 방법이 더 편할지는 아직 못 정했다.
어떻게 만들 것인가?
크롤링을 이용한다
현재 Codewars에서 제공하는 API를 보면 '유저가 제출한 정답을 가져오는 기능'은 없는 것으로 보인다. ( Codewars api 목록 )
그러면 어떻게 내가 제출한 코드를 가져오지? ⇒ 크롤링으로 가져올 수 있을 것 같다.
+) 크롤러를 잘 만들면 다른 프로젝트에서도 이용할수있지 않을까? 🤭
어떤 기능을 제공할 것인가?
아직 미정이다. 대략적으로 생각한 내용을 적어둔다.
1. 문제를 풀 때마다 폴더를 생성해 저장한다.
──[문제 이름 폴더]
├─ Readme.md # 문제를 저장
└─ [문제 이름].[확장자]
[문제 이름].[확장자]
를 올릴때 아래 주석을 추가하여 올린다. (가능하다면)
/**
* @name [문제 이름]
* @link [codewars link]
* @date [문제를 푼 날]
* @author [codewars username]
*/
2. 프로젝트 Readme.md에 푼 문제를 업로드한다.
[8kyu] | [문제 이름](문제 codewars 링크) [내 깃헙 코드 링크]
3. 커밋 메세지: 아직 못 정했다.
언제 만들 것인가?
시간 나는 대로 만들 계획이다.
이번부터 스터디도 들어가고하니 시간이 적을거같긴 하다만.. 올해 안에 완성할 수 있었으면 좋겠다.
추가로 시도하고 싶은 것
- jest 사용해보기
- 다른 곳에서도 이용할 수 있는 함수 만들기 (크롤링)
- 통신라이브러리(axios 등), framework 라이브러리(NestJS, Express 등), 테스트 라이브러리 (jest) 외의 라이브러리는 최대한 사용하지 않고 개발하기
Author And Source
이 문제에 관하여(0. 프로젝트 개요), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@kmutal712/0.-프로젝트-개요저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)