
SettleLab - Stablecoin Systems LMS
스테이블코인 연구 노트를 실제 학습 과정으로 바꾼 Next.js LMS입니다. 과정·수업·시험·진도·관리자 검토와 Solidity 실습을 연결하고, 원본 Obsidian 자료는 읽기 전용으로 보존했습니다.
스테이블코인 연구 노트를 실제 학습 과정으로 바꾼 Next.js LMS입니다. 과정·수업·시험·진도·관리자 검토와 Solidity 실습을 연결하고, 원본 Obsidian 자료는 읽기 전용으로 보존했습니다.
무엇이 어려웠는가.
Obsidian 원본 자료는 읽기 전용으로 보존하면서 과정·수업·시험·진도·과제·관리자 검토가 가능한 LMS 데이터로 바꿔야 했습니다.
어떻게 풀었는가.
Next.js App Router와 Prisma로 학습 상태를 구성하고 Markdown·시험 가져오기 스크립트에 원본 경계 검증을 넣었습니다. 관리자 검토, 진행률, 공개 검색, Foundry 실습을 같은 학습 경로에서 사용할 수 있게 했습니다.
구성 요소와 각자의 책임.
LMS Web App
- — 과정과 수업 화면
- — 진도 대시보드
- — 인증과 관리자 검토
Content Import Pipeline
- — Markdown 과정 가져오기
- — 시험 문제 가져오기
- — 원본 경계와 콘텐츠 범위 검사
Stablecoin Lab Workbook
- — 모의 스테이블코인
- — Permit 결제
- — ERC-3009 에스크로
- — CCTP·x402 시뮬레이터
Next.jsReactTypeScriptPrismaSQLiteBetter AuthTailwind CSSVitestFoundry
개요
- 1인 개발로 진행한 블록체인 LMS입니다.
- 스테이블코인 시스템, 정산, 보안 테스트, L2/크로스체인 리스크, RWA 토큰화, 계정추상화, x402 결제, 프라이버시, 비EVM, 인프라 레이더 주제를 다룹니다.
- 한국어 Obsidian 리서치 vault에서 출발했고,
web/하위의 데이터베이스 기반 웹 학습 플랫폼으로 전환했습니다. - 라이브 사이트: https://settlelabs.dev/
- 공개 저장소: https://github.com/gwkim92/settleLabs
제품 표면
1) LMS 경험
- home, learn, lesson detail, exams, search, dashboard, sign-in/sign-up, admin route를 가진 Next.js App Router 앱입니다.
- 권장 경로, 전체 syllabus, 실습/과제 중심 보기로 학습 흐름을 제공합니다.
- 레슨에는 학습 결과, 선행조건, 완료 기준, 과제, 출처, 코드 블록, 시각 블록, Mermaid 다이어그램을 포함합니다.
2) 진행률, 시험, 리뷰
- Prisma 모델로 user/session/course/lesson/task/progress/submission/note/exam/question/attempt/answer를 관리합니다.
- 사용자는 레슨 완료, 과제 제출, 대시보드 진행률 확인, 코스 시험 응시를 할 수 있습니다.
- 관리자 화면은 lessons, users, sources, reviews, monitoring을 포함합니다.
3) 콘텐츠 파이프라인
- Markdown 강의 자료와 JSON 시험 은행을 TypeScript 스크립트로 DB에 import합니다.
- source-boundary 검증으로 원본 vault를 웹 앱이 직접 수정하지 않도록 분리했습니다.
- content audit 스크립트로 커버리지와 품질을 확인합니다.
랩 계층
- Foundry workbook에는 mock stablecoin, Permit checkout, ERC-3009 escrow, CCTP simulator, x402 payment server, invariant test가 포함됩니다.
- 개념 학습을 실행 가능한 결제/정산 시나리오와 연결하는 계층입니다.
배포 메모
- 운영 서비스는 https://settlelabs.dev/ 에서 접근 가능하며, nginx 앞단의 Next.js 배포로 서빙됩니다.
- 저장소는 공개 상태이며
main이 최신입니다. - 런타임 설정은 Better Auth, Prisma/SQLite, app URL, seed admin 환경변수와 표준 Next.js 스크립트를 사용합니다.