# 템플릿으로 저장소 만들기

## 1. 저장소 만들기

GitHub 의 템플릿 저장소에서 **Use this template** 로 새 저장소를 만듭니다(커밋 기록 없이 시작합니다).
clone 해서 쓴다면 `.git` 을 지우고 `git init` 으로 새로 시작합니다.

## 2. 이름 바꾸기

```bash
pnpm rename "My Shop"            # slug 는 이름에서 만듭니다 (my-shop)
pnpm rename "가계부" gagyebu      # 이름이 영문이 아니면 slug 를 줍니다
```

템플릿 이름 `iStack` 과 slug `initializer-stack` 이 쓰인 곳(README · AGENTS · DESIGN 제목, 앱 title · 창 이름 · 앱 이름,
루트 `package.json`, compose 프로젝트, Expo slug, Tauri identifier)을 한 번에 바꾸고, 스크립트는 끝나면 스스로 지워집니다.

저장소 안에서만 쓰는 이름(`@app/*`, Java 패키지 `app`, DB 계정)은 그대로 둡니다. 밖에 보이지 않아 프로젝트 이름과 달라도 됩니다.
예외와 이유는 [레퍼런스 · 개발 → 이름 바꾸기](/reference/development/#이름-바꾸기)에 있습니다.

## 3. 쓰지 않는 예시 빼기

```bash
pnpm drop site lite mobile   # 남길 것만 두고 뺍니다
pnpm install                 # lockfile 정리
```

폴더와 함께 그것을 가리키는 설정 줄(gen · contract · DB · compose · smoke · 포트)을 지웁니다. 남는 앱 · 서버가 부르는 서버는 빼지 않습니다.
tags · activity 는 notes 와 admin 이, 서버 셋은 gateway 가 부르므로 빼려면 그 호출을 먼저 고칩니다. gateway 는 앱이 남아 있으면 빼지 않습니다. 문서의 설명은 고치지 않고 남은 언급이 있는 파일을 알려 줍니다.
→ [레퍼런스 · 개발 → 예시 빼기](/reference/development/#예시-빼기)

## 4. 맡을 일로 이름 바꾸기

폴더 이름은 맡은 일입니다(`notes` · `tags` · `activity`, `web` · `admin` · `site`). 예시를 본떠 다른 일을 맡기면 그 일의 이름으로 바꿉니다.
구현 언어 · 프레임워크는 이름에 넣지 않습니다. 이름이 들어간 곳을 찾는 명령과 순서는 [서버 추가 → 이름을 바꿀 때](/guides/add-server/#이름을-바꿀-때)에 있습니다.

## 5. README · LICENSE

- README 는 템플릿 소개입니다. 프로젝트에 맞게 고쳐 씁니다.
- 템플릿은 Apache License 2.0 입니다. 프로젝트의 라이선스는 직접 정하고, 템플릿 코드를 담아 배포할 때의 고지 조건은 Apache 2.0 을 따릅니다.

## 다음

- [처음 실행하기](/getting-started/first-run/)