Go to file
2026-05-31 00:29:55 +09:00
.claude docs: add dashboard full-set enhancement spec 2026-05-30 22:02:10 +09:00
.playwright-mcp Baseline before video model consolidation 2026-05-30 18:56:21 +09:00
docs/superpowers docs: add all-pages design uplift implementation plan 2026-05-31 00:25:53 +09:00
gradle/wrapper Baseline before video model consolidation 2026-05-30 18:56:21 +09:00
src/main style(css): add design tokens (primary-rgb, warning, spacing, shadow, tabular-nums) 2026-05-31 00:29:55 +09:00
.gitignore Baseline before video model consolidation 2026-05-30 18:56:21 +09:00
build_log_final.txt Baseline before video model consolidation 2026-05-30 18:56:21 +09:00
build_log.txt Baseline before video model consolidation 2026-05-30 18:56:21 +09:00
build.gradle Baseline before video model consolidation 2026-05-30 18:56:21 +09:00
CLAUDE.md docs: update CLAUDE.md for ChannelVideo single-master architecture 2026-05-30 19:59:38 +09:00
gradlew Baseline before video model consolidation 2026-05-30 18:56:21 +09:00
gradlew.bat Baseline before video model consolidation 2026-05-30 18:56:21 +09:00
README.md Baseline before video model consolidation 2026-05-30 18:56:21 +09:00
settings.gradle Baseline before video model consolidation 2026-05-30 18:56:21 +09:00

h-lab

유튜브 데이터를 수집하고 분석하는 개인용 웹 서비스입니다. Spring Boot 4.x(3.4.0) 기반의 백엔드와 React + Vite 기반의 프론트엔드로 구성되어 있습니다.

🛠 Tech Stack

Backend

  • Framework: Spring Boot 3.4.0 (Java 21)
  • Database: H2 (Development), JPA
  • API Docs: Swagger UI (SpringDoc)
  • Architecture: Domain-Driven Design style

Frontend

  • Framework: React 18 (Vite)
  • Language: TypeScript
  • Styling: Vanilla CSS + CSS Variables (Dark Mode)
  • State: Zustand
  • Charts: Recharts

🚀 How to Run

Backend & Frontend (Integrated)

  1. backend 디렉토리로 이동
  2. ./gradlew bootRun 실행 (Windows: gradlew bootRun)
  3. 웹 서비스 접속: http://localhost:8080
    • 메인 대시보드: http://localhost:8080/
    • 채널 관리: http://localhost:8080/channels
    • Swagger UI: http://localhost:8080/swagger-ui.html

Frontend (Legacy React)

Removed in favor of Thymeleaf Server-Side Rendering

📂 Project Structure

h-lab/
├── src/main/java/com/hlab/yanalyst/
│   ├── domain/        # Domain Entities (Video, Channel...)
│   └── web/           # Web Controllers (Thymeleaf)
│
└── src/main/resources/
    ├── static/        # CSS, JS
    └── templates/     # HTML Templates (Thymeleaf)

Key Features

  • Dashboard: 전체 데이터 요약 및 시각화 (Charts)
  • Channel Management: 분석 대상 유튜브 채널 관리
  • Dark Mode: 눈이 편안한 프리미엄 다크 모드 UI