Files
Gnuboard7/docs/ai-tools/skills/create-template.md
T
2026-07-01 10:30:32 +09:00

3.6 KiB

템플릿 스캐폴딩 (create-template)

새로운 템플릿(관리자 또는 사용자)의 기본 구조를 생성합니다.

TL;DR (5초 요약)

1. 명령: /create-template vendor-template [--type=admin|user]
2. 위치: templates/_bundled/vendor-template/
3. 참조 샘플: templates/_bundled/gnuboard7-hello_admin_template/ (Admin), gnuboard7-hello_user_template/ (User)
4. hidden 플래그: manifest.hidden=true 시 관리자 UI 제외 (CLI 정상)
5. 생성 후: npm install → template:build → template:install → template:activate

사용법

/create-template vendor-template [--type=admin|user]

예시:

  • /create-template sirsoft-admin_modern — Admin 템플릿
  • /create-template sirsoft-modern --type=user — User 템플릿

기본값은 admin입니다.

입력 형식

  • vendor-template — 벤더명과 템플릿명을 하이픈(-)으로 연결
  • Admin 네이밍 권장: vendor-admin_xxx (예: sirsoft-admin_modern)
  • User 네이밍 권장: vendor-xxx (예: sirsoft-modern)

생성 위치

templates/_bundled/vendor-template/

생성되는 파일

파일 설명
template.json 메타데이터 SSoT (type, components, error_config, externals 등)
routes.json 프론트엔드 라우트 정의
components.json 컴포넌트 레지스트리 매핑
CHANGELOG.md Keep a Changelog 형식
LICENSE MIT 라이선스
lang/{ko,en}.json 다국어
layouts/_[type]_base.json 베이스 레이아웃 (slot 시스템)
layouts/errors/*.json 에러 레이아웃 6종 (401/403/404/500/503/maintenance)
layouts/[초기 페이지].json admin: admin_dashboard / user: home
src/index.ts 컴포넌트 등록 엔트리
package.json npm 패키지 설정
vite.config.ts Vite 빌드 (IIFE 출력)
vitest.config.ts Vitest 테스트 설정
tsconfig.json TypeScript 설정

생성되는 디렉토리

  • src/components/basic/ — 기본 컴포넌트 (Div, Button, Input 등)
  • src/components/composite/ — 합성 컴포넌트 (Modal, Toast 등)
  • src/components/layout/ — 레이아웃 컴포넌트 (Container, Flex, Grid, Section)
  • assets/css/, assets/fonts/, assets/images/ — 정적 에셋
  • preview/ — 미리보기 이미지
  • __tests__/layouts/ — 레이아웃 렌더링 테스트

Admin vs User 차이

항목 Admin User
type "admin" "user"
라우트 접두사 */admin/* /
auth_required 기본 true false
버전 히스토리 미지원 (읽기 전용) 지원 (편집 가능)
베이스 레이아웃 header + sidebar + content + footer header + content + footer
초기 페이지 admin_dashboard home
필수 composite AdminHeader, AdminSidebar, AdminFooter, Modal, Toast Header, Footer, Modal, Toast
features 미포함 dark_mode, responsive, multi_language, multi_currency

생성 후 다음 단계

# 1. 패키지 설치
cd templates/_bundled/vendor-template
npm install

# 2. 컴포넌트 구현 (src/components/)

# 3. 빌드 및 설치
php artisan template:build vendor-template
php artisan template:install vendor-template
php artisan template:activate vendor-template

참조 문서