An open API service indexing awesome lists of open source software.

https://github.com/BaekjoonHub/BaekjoonHub

백준 자동 푸시 익스텐션(Auto Git Push for BOJ)
https://github.com/BaekjoonHub/BaekjoonHub

Last synced: 10 days ago
JSON representation

백준 자동 푸시 익스텐션(Auto Git Push for BOJ)

Awesome Lists containing this project

README

        


BaekjoonHub - Automatically sync your code to GitHub.


BaekjoonHub - Automatically sync your code to GitHub.





license
chrome-webstore
users

## 목차

1. [크롬 마켓](#지금-크롬-마켓에서-확인하세요)
2. [백준허브란?](#백준허브란what-is-baekjoonhub)
3. [설치 및 연동](#설치-및-연동how-to-set-it-up)
4. [작동 원리](#작동원리how-it-works)
1. [동작 화면](#1-동작-화면)
2. [업로드 시점](#2-업로드-시점)
3. [백준 제출 기준](#3-백준-제출-기준)
4. [저장되는 정보](#4-저장되는-정보)
5. [링크 및 문서](#링크-및-문서)




## 지금 크롬 마켓에서 확인하세요!





## 백준허브란?(What is BaekjoonHub?)


백준 허브는 LeetCode의 개인 풀이를 github에 자동 푸시해주는 LeetHub에서 영감을 받아 만든 프로젝트입니다. 백준, 프로그래머스, goormlevel를 통해 알고리즘 공부를 하시는 분들이 더욱 쉽게 코드를 저장하고 관리할 수 있게 하도록 만들었으며, 오픈소스 프로젝트로 여러분의 조언과 참여를 환영합니다.



BaekjoonHub is a chrome extension that automatically pushes your code to GitHub when you pass all tests on a Baekjoon Online Judge problem. This project was based off of LeetHub, a similar extension for Leetcode.


👉 예시 Repository 보러 가기




## 설치 및 연동(How to set it up)


  1. 크롬에서 설치 후 우측 상단의 popup 버튼을 클릭합니다.

  2. "Authorize with GitHub" 버튼을 누르고 인증을 완료하면 Repository 연동 화면이 표시됩니다.

  3. Repository를 신규로 만들거나 기존에 존재하는 Repository에 연동 가능합니다. (신규 Repository 생성시 visibility 기본값은 private으로 되어있습니다)

  4. 디렉토리 구조를 플랫폼별로 또는 언어별로 하는 옵션이 있습니다.

  5. Get Started 버튼을 누르면 링크가 완료됩니다.

  6. 이후 제출화면이 감지되면 자동으로 업로드됩니다.





## 작동원리(How it works)

백준허브는 Github API를 이용합니다.


코드가 제출되면 정답여부를 식별하고 제출된 코드와 메타데이터를 파싱해서 Github API를 통해 Repository에 반영합니다.

### 1. 동작 화면

![](assets/extension/Baekjoon.gif)

백준 동작 화면


![](assets/extension/Programmers.gif)

프로그래머스 동작 화면


![](assets/extension/SWExpertAcademy.gif)

SW Expert Academy 동작 화면


![](assets/extension/goormlevel.gif)

goormlevel 동작 화면

### 2. 업로드 시점

백준허브는 기본적으로 풀이 채점 후 정답임을 감지하여 작동합니다.


다만 SW Expert Academy 플랫폼은 정답을 맞추면 "백준허브로 업로드" 버튼이 생깁니다.


업로드 도중 페이지 이동은 권장드리지 않습니다.

### 3. 백준 제출 기준

백준의 경우 "내 제출" 목록을 정렬해서 가장 적합한 제출을 업로드하며 비교 요소는 아래와 같습니다.

1. 서브태스크가 있는 문제일 경우 점수가 더 높은 제출
2. 실행시간이 짧은 제출
3. 사용메모리가 적은 제출
4. 코드길이가 짧은 제출
5. 제출번호가 더 큰 제출(i.e. 최신 제출)

### 4. 저장되는 정보

플랫폼 별로 문제 해결 시 파싱 후 저장되는 정보는 다음과 같습니다.



플랫폼
문제 메타 정보
사용자 제출 정보


백준

  • 문제 제목

  • 문제 아이디

  • 문제 링크

  • 문제 등급

  • 문제 설명

  • 사용 언어

  • 문제 분류



  • 코드

  • 사용한 메모리

  • 실행 시간




  • 프로그래머스

  • 문제 제목

  • 문제 아이디

  • 문제 링크

  • 문제 등급

  • 문제 설명

  • 사용 언어



  • 코드

  • 사용한 메모리

  • 실행 시간




  • SW Expert Academy

  • 문제 제목

  • 문제 아이디

  • 문제 링크

  • 문제 등급

  • 사용 언어



  • 코드

  • 사용한 메모리

  • 실행 시간

  • 코드 길이




  • goormlevel

  • 문제 제목

  • 시험 아이디

  • 문제 아이디

  • 문제 링크

  • 사용 언어



  • 코드

  • 사용한 메모리

  • 실행 시간






  • ## 링크 및 문서






    버그 신고





    카카오톡 협업방