ESP32-S3 Bench Guide
ESP32-S3 N16R8 bench guide: live pinout, lessons, simulators and the bench log.
생각하고, 시도하고, 발견하는 즐거운 정보 교실
Translation pending
EducationHTML · TypeScriptGitHub @DonghyunTOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
CS Class — 즐거운 정보 교실
Translation pending
Taken from the repository README
Loading the full README.
Read the full README ↗설치 없이 브라우저로 시작하는 중학교 정보 수업 웹 플랫폼
Next.js 16 (App Router)·React 19·TypeScript·Firebase Auth & Firestore·EntryJS 4.0·Upstage Solar AI
CS Class는 프로그램 설치나 복잡한 환경 설정 없이, 웹 브라우저 접속만으로 학생이 주도적으로 문제를 해결하고 교사는 행정 부담 없이 수업을 운영하도록 돕는 디지털 정보 교실입니다.
개념(Concept) → 퀴즈(Quiz) → 실습(Practice) 3단계 라이프사이클을 따르며, 차시 번호에 구애받지 않고 활동 주제 중심으로 운영됩니다.수업별 개념·퀴즈·미션과 완료 기준은 PRD §4, 화면별 기능·한도는 PRD §5가 기준입니다. 여기에는 큰 그림만 둡니다.
src/lib/classroom/catalog.ts의 RELEASED_LESSONS입니다.내 배지), 내 할 일, 시간표 자동 연동, 우리 반 질문. 손들기 운영 여부는 PRD §5.5를 따릅니다.flowchart LR
subgraph Client ["Client (Browser)"]
Work["useWork (State Hook)"]
Draft["Memory Draft (No plain localStorage)"]
Guard["Navigation Guard (3 Options)"]
end
subgraph Server ["Server (Next.js & Firebase)"]
API["/api/classroom/work (OCC Revision)"]
Auth["Single Session & Auto Logout"]
DB[(Firestore DB)]
end
Work -->|Save Button / Ctrl+S| API
Work -.->|Unsaved Leave| Guard
API -->|Optimistic Locking| DB
Auth -->|Idle Timeout| DB
Ctrl+S와 PRD §3.2의 명시적 예외(채점·제출·AI 요청·손들기 등)에서만 서버에 보관하고 debounce 자동 저장을 두지 않으며, 미저장 이탈은 3선택 모달로 막습니다.docs/ 아래 마크다운만 바꾼 커밋은 짧게 끝나는 문서 모드 CI로 자동 전환됩니다.24.x 중 24.12 이상(firebase 13 요구, CI·Vercel은 24의 최신판)JDK 21+. 로컬 에뮬레이터(실제 서버 대신 이 PC에서 실행하는 연습용 Firebase)에 필요합니다. 설치 방법은 개발 안내 §1.1에 있습니다.# 1. 앱이 쓰는 패키지(의존성) 설치와 엔트리 파일 준비
npm ci
# 2. 로컬 에뮬레이터(Auth 9099 / Firestore 8080)와 개발 서버 동시 실행
npm run dev:emulator
서버가 구동되면 브라우저에서 http://localhost:3000으로 접속합니다.
21099) 또는 게스트 교사 버튼을 누르면 별도 인증 설정 없이 주요 기능을 바로 체험할 수 있습니다(게스트 교사는 2학년 1~11반 담당).npm.cmd 및 npx.cmd를 사용합니다.한 주제는 한 문서에만 쓰고 다른 문서는 링크로 가리킵니다(주제별 위치는 문서 작성 기준).
| 문서 | 핵심 내용 및 담당 영역 | 대상 독자 |
|---|---|---|
AGENTS.md | AI 에이전트 작업 지침, 핵심 실행 명령, 엄격한 가드레일 (절대 규칙) | 모든 AI 에이전트 |
docs/PRD.md | 확정 제품 요구사항, 수업 카탈로그 규약, 도메인 상태 머신, Non-Goals | 선생님(제품 결정)·에이전트 |
docs/DESIGN.md | 시각 디자인 기준, 시맨틱 색상 토큰, 반응형 기준(820px), LessonShell 명세 | 에이전트(화면 작업) |
docs/DEVELOPMENT.md | 로컬 에뮬레이터 설정, 반영 경로·검증, 신규 수업 추가 체크리스트, 문서 작성 기준 | 에이전트 |
docs/FIREBASE_SETUP.md | Vercel·Firebase 설정, 배포 게이트와 공개 후 확인, 장애 복구, 운영 환경 현황 | 선생님(운영 승인·콘솔 작업)·에이전트 |
docs/HANDOFF.md | 현재 작업 상태, 최근 반영과 검증, 다음 작업, 남은 한계 | 선생님·다음 에이전트 |
문서를 고칠 때의 주제별 위치와 쓰기 규칙은 문서 작성 기준에 있습니다. docs/plans/에는 진행 중인 작업 계획만 두고, 끝난 계획과 지난 원문은 docs/archive/에 보관합니다. docs/reference/는 보관 원문과 HANDOFF가 가리키는 근거 자료(화면 캡처·날짜 붙은 검토 보고서)입니다.
선생님이 직접 할 일은 HANDOFF의 다음 작업·남은 한계, 수업 당일 순서는 첫 실제 수업 확인 순서에 있습니다. 교사가 투사하는 3차시 개념 수업 자료는 내일, 축제에서 만나를 참고하세요. 독립 HTML 완성본과 수정 소스가 함께 있습니다.
cs-class/
├─ README.md # 프로젝트 소개 및 문서 색인 (대문)
├─ AGENTS.md # 에이전트 작업 규칙·승인 범위·금지사항
├─ src/
│ ├─ app/ # Next.js App Router (페이지 및 서버 API)
│ ├─ components/ # 앱 전체 틀과 공용 조각은 바로 아래에 둠(자세한 배치는 AGENTS 컴포넌트 구조)
│ │ ├─ home/ # 공개 랜딩 페이지 및 수업 시연
│ │ ├─ ui/ # 버튼, 입력창 등 공통 디자인 컴포넌트 (Base UI)
│ │ ├─ dashboard/ # 공통 대시보드, 개인 할 일, 반 일정
│ │ ├─ student/ # 수업 전용 틀 (LessonShell), 학습 뷰어, 수동 저장 (useWork)
│ │ ├─ teacher/ # 교사 대시보드, 학생 관리, 수업 공개, 미리보기
│ │ ├─ community/ # 우리 반 질문(Q&A)
│ │ ├─ classroom/ # 손들기
│ │ ├─ explore/ # 공개 홈의 수업 소개(데모) 화면
│ │ └─ settings/ # 닉네임·비밀번호 설정
│ └─ lib/
│ ├─ classroom/ # 도메인 타입, 진도 측정, 수업 메타데이터
│ └─ server/ # 인증 장부, Firestore 서비스, Q&A 서버 로직
├─ tests/ # Playwright E2E 검증 및 단위 테스트 스위트
├─ public/entryjs/ # EntryJS 4.0.23 편집기 및 브라우저 정적 자산 (sprites/library: 엔트리 공식 오브젝트 묶음)
├─ public/concepts/ # 개념 화면 정적 그림(엔트리 블록 이미지 캡처)
├─ scripts/ # 에뮬레이터 시드, 선별 검증기, 문서 검사 스크립트
├─ teaching-materials/ # 교사용 독립 자료 (로그인·DB 미사용)
│ ├─ festival-romance/ # 3차시 개념 수업 투사 자료(자체 빌드 build.cjs가 public/festival-romance.html도 만듦)
│ └─ instructor-guide/ # 강사님께 보내는 사이트 사용법 안내서(PDF와 원본 HTML, 캡처·PDF 다시 만들기 스크립트)
├─ docs/ # PRD, DESIGN, DEVELOPMENT, FIREBASE_SETUP, HANDOFF 핵심 문서
│ ├─ plans/ # 진행 중인 작업 계획 (필요할 때 만들고, 끝나면 보관)
│ ├─ archive/ # 지난 문서 원문 스냅샷 (수정 금지)
│ └─ reference/ # 보관 원문·HANDOFF가 가리키는 근거 자료
├─ outputs/design-review/ # 보관 원문이 가리키는 초기 화면 캡처 (수정 금지)
└─ archive/ # V1 최신 소스 참고본 (실행·배포 대상 아님, 수정 금지)