ESP32-S3 Bench Guide
ESP32‑S3 N16R8 벤치 가이드: 실시간 핀아웃, 강의, 시뮬레이터 및 벤치 로그
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기padolet - 교육용 실시간 커뮤니케이션 보드
저장소 README에서 가져옴
README 전체를 불러오는 중입니다.
README 전문 보기 ↗운영: https://padolet.vercel.app · Next.js 16 + Firebase(Firestore·Auth·Storage, 프로젝트 jblet-3e6c3) · Vercel 배포
작업 이력과 결정 사항은 taskslog.md에 Phase별로 기록합니다.
| 사용자 | 화면 | 주요 기능 |
|---|---|---|
| 교육생 | /join → /board/{id} | 현재 실습 안내(진행 중·실습 완료·도움 필요·질문하기), 보드/자료/질문/제출 보기, 대화, 투표 |
| 강사 (세션 소유자) | 보드 + 강사 도구 메뉴 | 진행 요약(도움 요청·미답변 질문·완료 인원), 실습 안내 편집, 질문 상태 변경, 제출 현황·피드백, 타이머·프로젝터·보고서·모더레이션·잠금 |
| 강사 | /board/{id}/instructor (새 창) | 강사 진행 화면 — 도움 요청·미답변 질문·실습 진행·제출 현황을 한 화면에 |
| 관리자 | /admin | 세션 검색·상태 필터·정렬, 교육일, 보드 열기·보고서, 더보기(QR·정보 수정·템플릿으로 복제·종료·보관·삭제) |
| 최고 관리자 | /admin/settings | 관리자 권한 관리 |
실습 안내 만들기/편집에서 모듈명·실습 제목·설명·자료 링크·보드 자료·마감·제출 링크를 입력하고 현재 실습으로 지정. 교육생 화면 맨 위에 바로 고정됩니다.진행 요약의 완료·진행 중·응답 없음, 도움 요청 수를 확인하고 눌러서 요청자별 확인·처리 완료. 처리 완료는 교육생의 실습 완료 여부를 바꾸지 않습니다.질문 탭(미답변 수 배지)에서 상태를 접수→답변 중→해결로 바꾸고, 해결한 질문은 다시 접수로 열 수 있습니다. 답변은 댓글로 답니다. 대화 메시지는 메시지 메뉴(⋯)의 질문으로 등록으로 옮길 수 있습니다(원본 유지).자료·프롬프트로 올리면 자료 탭에 모입니다. 공지는 강사만 올릴 수 있습니다.앱 안 제출함 열기를 켜면 제출 탭이 생깁니다. 교육생은 글·파일(최대 5개)을 제출하고 다시 제출할 수 있으며, 제출한 교육생끼리는 최신 제출물만 서로 봅니다. 제출 이력과 피드백은 본인과 강사만 봅니다. 강사는 제출 탭에서 실습별 제출·재제출·미제출 수를 보고 보기·피드백으로 피드백을 남깁니다(다시 제출하면 피드백 대기로 돌아감).강사 도구 > 강사 진행 화면 (새 창). 보조 모니터에 띄워 두고 도움 요청·미답변 질문·진행·제출 현황을 한 번에 봅니다. 집계는 교육생만 대상입니다(강사·관리자 계정 제외).프로젝터에 크게 보기. 작성자 이름은 기본으로 숨기고, 보드 상단 제어 줄의 이름 표시를 눌렀을 때만 보입니다. 제출물은 글·파일명·회차만 띄우고 피드백·이력은 띄우지 않습니다./admin 더보기 > 템플릿으로 복제. 실습 안내와 강사가 올린 자료·프롬프트·공지만 새 세션으로 옮기고, 교육생 글·질문·대화·제출물·참여자·투표는 복사하지 않습니다. 마감 시각은 비워 둡니다.강사 도구 > 보고서. 외부에 공유할 때는 참여자 명단·첨부 다운로드 링크를 끄고 내보내세요(링크는 주소를 아는 누구나 열 수 있음).지표 기준: 누적 입장 = 세션에 입장한 브라우저 수(강사 포함, 같은 브라우저 재입장은 1명). 최근 활동 = 약 3분 안에 보드를 띄워 둔 인원. 교육생 식별은 브라우저 익명 계정이라 다른 기기·시크릿 창은 새 참여자로 집계됩니다(제출도 같은 브라우저로 해야 이전 제출과 이어짐).
필요: Node 20.9+, Java 21 (JAVA_HOME 또는 ~/tools/jdk-*를 자동으로 찾음)
npm run emulators # Auth·Firestore·Storage 에뮬레이터 (demo-padolet)
npm run seed # 가상 데이터 — 세션 코드 TEST / EMPT / ENDD
npm run dev:emulator # http://localhost:3100 (관리자 로그인 화면에 '에뮬레이터로 로그인')
npm test # 단위 테스트 (Vitest)
npm run test:rules # 보안 규칙 테스트 (에뮬레이터 자동 기동)
npm run test:e2e # E2E (Playwright — 에뮬레이터·개발 서버 자동 기동)
PADOLET_EMULATOR_OFFSET=1000처럼 지정하면 모든 포트를 옮겨 두 벌을 동시에 띄울 수 있습니다.
에뮬레이터 로그인은 NEXT_PUBLIC_USE_EMULATOR=1 + 개발 서버에서만 등록되며 운영 빌드에는 없습니다.
npx firebase-tools deploy --only firestore:rules,storage --project jblet-3e6c3main에 push → Vercel 자동 배포반대 순서로 배포하면 새 기능의 쓰기가 규칙에 막힐 수 있습니다.