MCPcopy Index your code
hub / github.com/boostcampwm-2024/web30-stop-troublepainter

github.com/boostcampwm-2024/web30-stop-troublepainter @main

Chat with this repo
repository ↗ · DeepWiki ↗ · + Follow
418 symbols 986 edges 166 files 7 documented · 2%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

logo

방해꾼은 못말려: 그림꾼의 역습

잘 그렸나? 망쳤나? 정체를 숨긴 방해꾼이 쏘아올린 혼돈 속에서,

그림꾼들의 진실을 찾아내는 구경꾼들의 훈수가 시작됩니다! 🎨🕵️‍♀️

팀 노션   |   백로그   |   피그마   |   위키

주요 기능

🔗 회원가입 없이 URL 하나로 게임 시작하기!

클릭 한 번으로 게임방이 생성되고, 복사된 URL을 공유하면 누구나 쉽게 참여할 수 있어요.

🎨 방해꾼과 그림꾼이 실시간으로 하나의 캔버스에서 대결해요!

P2P 통신과 CRDT 기반으로 서로의 붓질이 실시간으로 동기화되어 긴장감 넘치는 그리기 대결을 즐길 수 있어요.

🖌️ 기본에 충실한 드로잉 도구! 연필 도구, 다채로운 색상 팔레트, 자유로운 선 두께 조절에 실수도 걱정 없는 Undo/Redo 기능까지!

Canvas API의 기본 기능으로 완성도 높은 그리기를 지원해요.

기술 스택

Category Stack
Common
Frontend
Backend
Deployment
Collaboration

웨베베베벱 팀 소개

5명의 못말리는 FE 개발자들이 모인 팀이에요. 현재 프로젝트에서 저희는 5명 전부 풀스택을 담당합니다!

곽수정 윤태연 유미라 정다솔 최선아
👑 팀장 부팀장 BE 팀장 시간 지킴이 FE 팀장

Extension points exported contracts — how you extend this code

Timer (Interface)
* 타이머 객체에 대한 인터페이스입니다. * `handleTick`은 타이머가 진행 중일 때마다 호출되고, `handleComplete`는 타이머가 완료될 때 호출됩니다.
client/src/utils/timer.ts
SocketError (Interface)
(no doc)
core/types/socket.types.ts
TestClient (Interface)
(no doc)
core/crdt/test/random-drawing.test.ts
Player (Interface)
(no doc)
server/src/common/types/game.types.ts
UseDropdown (Interface)
* 드롭다운을 제어하기 위한 커스텀 훅의 Props 인터페이스입니다.
client/src/hooks/useDropdown.ts
ReconnectRequest (Interface)
(no doc)
core/types/socket.types.ts
DrawingClient (Interface)
(no doc)
core/crdt/test/test-types.ts
Room (Interface)
(no doc)
server/src/common/types/game.types.ts

Core symbols most depended-on inside this repo

cn
called by 61
client/src/utils/cn.ts
merge
called by 17
core/crdt/LWWMap.ts
addStroke
called by 15
core/crdt/LWWMap.ts
getCanvasContext
called by 13
client/src/utils/getCanvasContext.ts
set
called by 13
core/crdt/LWWRegister.ts
getRoom
called by 10
server/src/game/game.repository.ts
getRoomPlayers
called by 8
server/src/game/game.repository.ts
updateRoom
called by 7
server/src/game/game.repository.ts

Shape

Function 137
Method 116
Interface 88
Class 62
Enum 15

Languages

TypeScript100%

Modules by API surface

server/src/exceptions/game.exception.ts24 symbols
core/types/socket.types.ts23 symbols
server/src/game/game.service.ts21 symbols
server/src/game/game.repository.ts15 symbols
core/crdt/LWWMap.ts14 symbols
server/src/redis/redis.service.ts13 symbols
server/src/game/game.gateway.ts13 symbols
client/src/components/canvas/MainCanvas.tsx11 symbols
core/crdt/test/test-utils.ts10 symbols
core/crdt/LWWRegister.ts9 symbols
server/src/common/services/timer.service.ts8 symbols
core/types/game.types.ts8 symbols

For agents

$ claude mcp add web30-stop-troublepainter \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page