평소 알고리즘 학습을 위해 1일1백준을 즐겨하는 저는 제가 제출해서 통과된 코드를 기록이나 백업 용도로 깃허브에 업로드해서 보관하고는 했습니다. 하지만 이렇게 직접 일일이 업로드하는 것은 상당히 귀찮기 때문에 결국 저의 레포는 껌데기만 남았습니다.
그래서 저는 이런 아이디어를 떠올렸습니다.
클릭 한 번에 내 제출 이력을 토대로 깃허브에 알아서 커밋해주는 친구가 있으면 좋지 않을까?
저는 이를 직접 웹으로 개발해보기로 결정하고, 아이디어를 떠올린 바로 그 순간 그 자리에서 곧장 개발을 시작했습니다.
주요 기능
현재 생각하고 있는 기능은 아래와 같습니다
- 백준 계정 연동
- 사용자가 백준 아이디와 비밀번호를 입력하여 로그인합니다.
- 깃허브 로그인 및 저장소 선택
- 사용자가 GitHub 계정으로 로그인하고, 연동할 레포지토리를 선택합니다.
- 마지막 업데이트 기록 확인
- 기존에 업로드된 문제 목록과 최종 업데이트 시점을 확인합니다.
- 현재 정보 불러오기
- 백준 마이페이지에서 맞춘 문제, 틀린 문제 등의 변동 사항을 가져옵니다.
- 깃허브 업데이트
- 추가된 문제만 선별하여 GitHub 저장소에 커밋합니다.
- 메모리 크기, 실행 시간 등의 정보를 포함하여 파일을 생성합니다.
- 파일 제목: 문제번호.cpp, 문제번호.py 등
- 커밋 메시지 포맷: [난이도 제목] 메모리크기: nB, 실행시간: n초
앞으로 개발을 진행하며 업데이트 된 내용을 깃허브와 블로그에 업로드할 계획입니다. 저의 개발 상황은 아래 깃허브에서 확인하실 수 있습니다.
'백엔드' 카테고리의 다른 글
[BOJ-AutoSync] 4. Github OAuth Apps 연동하기 (0) | 2025.03.16 |
---|---|
[BOJ-AutoSync] 3. FastAPI로 BOJ 조회 API 개발하기 (0) | 2025.03.16 |
[BOJ-AutoSync] 2. selenium으로 BOJ 로그인하고 코드 불러오기 (0) | 2025.03.14 |
[BOJ-AutoSync] 1. requests와 bs4로 BOJ 크롤링하기 (0) | 2025.03.14 |