Skip to content

Commit f922d4a

Browse files
Seungwoo321claude
andcommitted
docs: Fix documentation discrepancies with actual implementation
- Update project name from JSPlayground to PenguinJS across all docs - Fix code editor references from Monaco Editor to CodeMirror 6 - Correct game implementation status (2/18 games, not 3/18) - Update Promise Battle status from "partially implemented" to "not implemented" - Fix stage counts and implementation statistics - Ensure all documentation accurately reflects current codebase 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
1 parent 873cd69 commit f922d4a

16 files changed

+623
-1700
lines changed

docs/architecture/data-schema-design.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# JSPlayground 데이터 스키마 설계서
1+
# PenguinJS 데이터 스키마 설계서
22

33
## 1. 개요
44

docs/architecture/data-schema.md

Lines changed: 82 additions & 61 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# JSPlayground 데이터 스키마 설계서
1+
# PenguinJS 데이터 스키마 설계서
22

33
## 1. 개요
44

@@ -23,74 +23,95 @@ JavaScript 학습 게임 플랫폼의 모든 데이터 구조와 관계를 정
2323
### 데이터 엔티티 계층구조
2424
```
2525
Application State
26-
├── User Profile # 사용자 프로필
27-
├── Game Collection # 게임 컬렉션
28-
── Game Metadata # 게임 메타데이터
29-
│ └── Stage Data # 스테이지 데이터
30-
├── Progress System # 진행도 시스템
31-
── User Progress # 사용자 진행도
32-
├── Achievements # 성취 시스템
33-
── Statistics # 통계 데이터
34-
├── Settings # 사용자 설정
35-
└── Session Data # 세션 임시 데이터
26+
├── Game Manager # 게임 관리 시스템
27+
├── Game Config # 게임 설정
28+
── Game Progress # 게임 진행도
29+
── Game Session # 현재 게임 세션
30+
├── Stage Data # 스테이지 데이터
31+
── Score Data # 점수 데이터
32+
├── User Settings # 사용자 설정
33+
── Theme # 테마 설정
34+
│ └── Language # 언어 설정
35+
└── Local Storage # 로컬 저장소 관리
3636
```
3737

3838
---
3939

40-
## 3. 사용자 프로필 (User Profile)
41-
42-
### 기본 사용자 정보
43-
**UserProfile Entity**
44-
- 사용자 고유 식별자
45-
- 사용자명 (변경 가능)
46-
- 프로필 아바타 설정
47-
- 계정 생성 일시
48-
- 마지막 접속 일시
49-
- 선호 언어 설정
50-
- 테마 설정 (라이트/다크)
51-
52-
### 학습 선호도
53-
**LearningPreferences Entity**
54-
- 선호 난이도 설정
55-
- 힌트 사용 선호도
56-
- 애니메이션 속도 설정
57-
- 사운드 효과 설정
58-
- 접근성 옵션 설정
40+
## 3. 게임 관리 시스템 (Game Manager)
41+
42+
### GameConfig Interface
43+
```typescript
44+
interface GameConfig {
45+
id: string // 게임 고유 ID
46+
name: string // 게임 이름
47+
description: string // 게임 설명
48+
concept: string // 학습 개념
49+
difficulties: GameDifficulty[] // 지원 난이도
50+
totalStages: number // 총 스테이지 수
51+
prerequisites?: string[] // 선수 게임
52+
}
53+
```
5954

60-
### 사용자 통계
61-
**UserStatistics Entity**
62-
- 총 게임 플레이 시간
63-
- 총 완료한 스테이지 수
64-
- 평균 스테이지 완료 시간
65-
- 선호하는 게임 유형
66-
- 가장 어려워하는 개념
67-
- 학습 연속 일수
55+
### GameProgress Interface
56+
```typescript
57+
interface GameProgress {
58+
gameId: string // 게임 ID
59+
difficulty: GameDifficulty // 난이도
60+
completedStages: Set<number> // 완료한 스테이지
61+
currentStage: number // 현재 스테이지
62+
scores: Record<number, number> // 스테이지별 점수
63+
totalScore: number // 총점
64+
isUnlocked: boolean // 잠금 해제 여부
65+
}
66+
```
67+
68+
### GameSession Interface
69+
```typescript
70+
interface GameSession {
71+
gameId: string // 게임 ID
72+
difficulty: GameDifficulty // 난이도
73+
startTime: Date // 시작 시간
74+
endTime?: Date // 종료 시간
75+
currentStage: number // 현재 스테이지
76+
attempts: number // 시도 횟수
77+
hints: number // 사용한 힌트
78+
score: number // 현재 점수
79+
}
80+
```
6881

6982
---
7083

71-
## 4. 게임 컬렉션 (Game Collection)
72-
73-
### 게임 메타데이터
74-
**GameMetadata Entity**
75-
- 게임 고유 식별자
76-
- 게임 이름 (다국어 지원)
77-
- 게임 설명 (다국어 지원)
78-
- 게임 아이콘 리소스
79-
- 게임 유형 분류
80-
- 학습 목표 JavaScript 개념
81-
- 권장 선수 지식
82-
- 예상 완료 시간
83-
- 게임 버전 정보
84-
- 마지막 업데이트 일시
85-
86-
### 게임 분류 체계
87-
**GameCategory Entity**
88-
- 카테고리 식별자
89-
- 카테고리 이름
90-
- 카테고리 설명
91-
- 카테고리 색상 테마
92-
- 포함된 게임 목록
93-
- 카테고리별 진행도
84+
## 4. 스테이지 시스템 (Stage System)
85+
86+
### GameLevel Interface
87+
```typescript
88+
interface GameLevel {
89+
id: string // 스테이지 ID
90+
gameId: string // 게임 ID
91+
difficulty: GameDifficulty // 난이도
92+
stageNumber: number // 스테이지 번호
93+
title: string // 스테이지 제목
94+
instruction: string // 지시사항
95+
initialCode?: string // 초기 코드
96+
solution?: string // 정답 코드
97+
validation: (code: string) => boolean // 검증 함수
98+
hints: string[] // 힌트 목록
99+
}
100+
```
101+
102+
### 난이도별 스테이지 범위
103+
```typescript
104+
type StageRange = {
105+
start: number
106+
end: number
107+
}
108+
109+
type DifficultyStageRanges = {
110+
beginner: StageRange // 1-8 또는 1-5
111+
intermediate: StageRange // 9-16 또는 6-10
112+
advanced: StageRange // 17-24 또는 11-15
113+
}
114+
```
94115
95116
### 스테이지 메타데이터
96117
**StageMetadata Entity**

docs/architecture/game-engine-design.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# JSPlayground 게임 엔진 상세 설계서
1+
# PenguinJS 게임 엔진 상세 설계서
22

33
## 1. 개요
44

@@ -232,7 +232,7 @@ Game Engine Architecture
232232
### 코드 작성 게임 엔진 (Code Writing Engine)
233233

234234
#### 에디터 통합
235-
- **Monaco Editor 연동**: 전문적인 코드 편집 환경
235+
- **CodeMirror 6 연동**: 전문적인 코드 편집 환경
236236
- **문법 강조**: JavaScript 구문 하이라이팅
237237
- **자동 완성**: 컨텍스트 기반 제안
238238
- **에러 표시**: 실시간 구문 오류 표시

0 commit comments

Comments
 (0)