Skip to content
 
 

Repository files navigation

AlgoBattle

신한투자증권 프로 디지털 아카데미 3기
개발기간 : 24.02.16 ~ 24.02.29

개발 주소

AWS 배포 주소 : http://ec2-3-34-254-241.ap-northeast-2.compute.amazonaws.com/
Front-end Github : https://github.com/jkl0124/AlgoBattleFront
Back-end Github : https://github.com/SEO-YJ/AlgoBattleBack

팀원 소개

권기현 김현수 서유준 허상진
@kkh0331 @jkl0124 @SEO-YJ @bookeers

프로젝트 소개

AlgoBattle은 긴장감 넘치는 코딩테스트를 통해 알고리즘 실력 향상을 도모하는 게임이다. 사용자는 원하는 알고리즘 유형과 난이도를 선택하여 상대와의 실시간 경쟁을 즐길 수 있다. 랜덤으로 주어지는 문제를 풀고, 시간 내에 해결하지 못하거나 상대방에게 먼저 정답을 제출한 경우 게임이 종료된다. 이를 통해 사용자는 다양한 알고리즘 경험을 쌓을 뿐만 아니라, 푼 문제는 다시 출제되지 않아 새로운 도전을 계속할 수 있다.

Stacks 🐈

Environment

Visual Studio Code Git Github

Config

npm

Development

JavaScript React Express.js Socket.io Bootstrap MongoDB

Communication

Slack Notion

화면 구성

메인 페이지 로그인 Modal
main_page login_modal
방 생성 Modal 방 페이지
create_room_modal room_page
게임 페이지 결과 페이지
game_page result_page

주요 기능

⭐️ 백준 연동 기능

  • 백준 아이디를 입력하면 solved.ac api를 통해 있는지 확인
  • 만약 있을 경우, crawling을 통해 맞은 문제 리스트를 가져옴

⭐️ 방 생성 기능

  • 공개와 비공개를 선택하고 티어(level)와 알고리즘 유형을 선택하여 방 생성
  • Web Socket을 활용하여 새로 고침을 하지 않아도 Main Page에 있는 사용자 전부에게 실시간으로 생성된 방 정보를 확인 가능

⭐️ 문제를 추천해 주는 기능

  • 티어, 알고리즘, 게임에 참여중인 플레이어가 푼 문제를 고려하여 랜덤하게 추첨
  • 조건에 맞는 문제가 없을 경우에는 티어와 알고리즘을 다시 선택

⭐️ 채점 기능

  • 문제를 풀었을 경우에 백준 아이디를 활용하여 채점된 결과를 받아옴

⭐️ Web Socket 기능

  • socket.io room 기능을 활용하여 게임에 참여 중인 플레이어 간에 행동이 실시간으로 확인 가능

Architecture

AlgoBattle_Architecture

About

신한 미니프로젝트로 사람들 알고리즘테스트 배틀 웹페이지 프론트

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages