DeckHub는 시험 공부용 Anki .apkg 덱을 정리해서 배포하는 개인 아카이브입니다.
방문자는 GitHub Pages에서 공개된 덱을 찾고, GitHub Releases에 올라간 APKG 파일을
다운로드할 수 있습니다.
현재는 누구나 업로드하는 플랫폼이 아닙니다. 덱은 저장소 관리자가 직접 만들고 검토한 것만 공개합니다. 이 방식 덕분에 로그인, 업로드 검수, 서버 운영 없이도 덱 파일과 버전 이력을 투명하게 관리할 수 있습니다.
- 사이트: https://enceladus-x.github.io/deckhub/
- Preflight 검수: https://enceladus-x.github.io/deckhub/preflight/
- APKG 파일: GitHub Releases
- 덱 목록 원본:
catalog/decks.json
현재 공개된 덱은 아래와 같습니다.
| 항목 | 수량 |
|---|---|
| 덱 | 1 |
| 카드 | 600 |
| 분할 범위 | 3 |
| 덱 | 범위 | 카드 | 다운로드 |
|---|---|---|---|
| HSK 1~3급 600단어 예문 | 1급 150, 2급 150, 3급 300 | 600 | APKG |
새 덱이 공개되면 GitHub Pages의 카탈로그에도 자동으로 표시됩니다.
flowchart LR
A["APKG 파일"] --> B["GitHub Release"]
C["deck.json"] --> D["Catalog JSON"]
D --> E["GitHub Pages"]
B --> E
덱 파일 자체는 Git 저장소에 직접 넣지 않습니다. APKG는 GitHub Release에 보관하고,
decks/<category>/<slug>/deck.json manifest가 제목, 시험명, 버전, 카드 수, SHA256,
다운로드 링크를 관리합니다.
APKG를 분석해서 카드 수, 노트 수, 미디어 수, 태그별 범위를 확인합니다.
npm run deck:analyze -- .\deck.apkg .\analysis.jsonAPKG를 Release에 올린 뒤 manifest를 생성합니다.
npm run deck:link-release -- --category language --slug hsk-vocabulary --title "HSK Vocabulary" --summary "HSK vocabulary deck." --exam HSK --deck-version 2026.06 --release hsk-vocabulary-v2026.06 --asset hsk-vocabulary.apkg --sha256 <64-char-sha256> --analysis-json .\analysis.json --segments-from-tags카탈로그를 갱신하고 검증합니다.
npm run catalog:build
npm run catalog:check
npm run frontend:buildmain에 푸시되면 GitHub Actions가 GitHub Pages를 다시 배포합니다.
/preflight/는 Anki TXT를 브라우저 안에서만 읽어 검수하는 정적 도구입니다.
세미콜론 필드 구조, 보기 의존 문항, 부정형 객관식 흔적, OX 미완성 문장, 긴 정답,
수치 단위 누락 등을 확인하고 ANKI_REVIEW_FIX_REQUEST 형식으로 복사할 수 있습니다.
자세한 내용은 docs/publish-deck.md를 참고하세요.
| 경로 | 설명 |
|---|---|
decks/ |
덱 manifest 원본 |
catalog/ |
자동 생성되는 공개 카탈로그 JSON |
frontend/ |
GitHub Pages로 배포되는 정적 사이트 |
scripts/ |
APKG 분석, manifest 생성, catalog 빌드 도구 |
.github/workflows/catalog.yml |
Pages 배포 workflow |
현재는 정적 사이트와 GitHub Releases만 사용합니다. 트래픽이 커지거나 비공개 배포가 필요해지면 S3, CloudFront Signed URL, Lambda API를 다시 붙일 수 있도록 기존 AWS 인프라 폴더는 남겨두었습니다.