4.9 KiB
CLAUDE.md
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
Project Overview
This is the official website for 밍글 스튜디오 (Mingle Studio), a motion capture studio located in Incheon, South Korea. The website is a multi-page static site built with vanilla HTML, CSS, and JavaScript, showcasing motion capture services, studio galleries, and client portfolios.
Architecture & Structure
Page Architecture
The site follows a modular component-based structure:
- Main Pages:
index.html,about.html,services.html,portfolio.html,gallery.html,contact.html,qna.html,404.html - Shared Components:
components/header.html,components/footer.html - Page-specific Assets: Each page has dedicated CSS (
css/[page].css) and JavaScript (js/[page].js) files - Common Assets:
css/common.cssandjs/common.jsprovide shared functionality
Component Loading System
The site uses a dynamic component loading system implemented in js/common.js:
- Header and footer are loaded via
fetch()API fromcomponents/directory - Fallback system: Static backup footer is hidden when dynamic loading succeeds
- Components are initialized after DOM load with proper error handling
CSS Architecture
- CSS Variables: Defined in
:rootofcommon.csswith motion capture/VTuber orange theme - Modular Approach: Common styles in
common.css, page-specific styles in separate files - Responsive Design: Mobile-first approach with breakpoints at 768px and 1200px
- Color Scheme: Primary orange (
#ff8800) with gradient variations for modern tech aesthetic
Development Commands
Quick Start (권장)
Windows:
# 더블클릭으로 실행
start-server.bat
macOS/Linux:
# 터미널에서 실행
./start-server.sh
Manual Server Start
Node.js (권장):
npm run dev # http://localhost:8000
npm start # 같은 기능
npm run serve # 같은 기능
npm test # 도움말 + 서버 시작
Python:
python server.py # 커스텀 서버 (추천)
python -m http.server 8000 # 기본 서버
Development Features
- 자동 브라우저 열기: 서버 시작 시 자동으로 브라우저에서 사이트 열림
- Clean URLs:
.html확장자 없이 접근 가능 (/about,/services등) - 개발 최적화: 캐시 비활성화, CORS 헤더 추가
- 오류 처리: 포트 충돌 및 기본적인 오류 상황 처리
Available URLs
- Homepage: http://localhost:8000/
- About: http://localhost:8000/about
- Services: http://localhost:8000/services
- Portfolio: http://localhost:8000/portfolio
- Gallery: http://localhost:8000/gallery
- Contact: http://localhost:8000/contact
- Q&A: http://localhost:8000/qna
Key Technical Details
SEO Optimization
- Structured data (JSON-LD) with LocalBusiness schema for search engines
- Comprehensive meta tags including Open Graph, Twitter Cards, and Korean platform-specific tags
- Sitemap.xml without lastmod dates to prevent unwanted date display in search results
- Favicon system: Both ICO (
mingle-logo.ico) and WebP (mingle-logo.webp) formats
Image Management
- Studio images stored in
Studio_Image/directory using WebP format for optimization - Gallery system dynamically references these images with descriptive alt text
- Logo assets:
mingle-logo.webp(primary) andmingle-logo.ico(favicon)
Form Handling & Interactivity
- Contact form with real-time validation in
js/contact.js - Lazy loading implementation for performance optimization
- Scroll animations and intersection observers for modern UX
Content Management
Adding Gallery Images
- Add new WebP images to
Studio_Image/directory - Update
gallery.htmlwith new gallery items following the existing pattern:<div class="gallery-item"> <img src="Studio_Image/[filename].webp" alt="descriptive text" class="gallery-img" loading="lazy"> <div class="gallery-caption">Caption Text</div> </div>
Adding Portfolio Videos
- YouTube videos: Update
portfolio.htmlwith iframe embed usingdata-srcfor lazy loading - SOOP/streaming VODs: Direct iframe source for broadcast examples
Navigation Updates
When adding new pages, update components/header.html navigation links and ensure corresponding CSS/JS files follow the naming convention.
Business Context
This website represents a motion capture studio business with:
- Primary Service: OptiTrack-based motion capture studio rental (22만원/hour)
- Target Market: VTubers, game developers, content creators
- Location: Incheon Techno Valley, unique positioning as Incheon's only motion capture facility
- Technical Specs: 28 OptiTrack cameras, 8×7m capture space
Understanding this context helps with content updates, SEO optimization, and feature development that aligns with the studio's business objectives.