# 새로온 정적 사이트 제작 규약

당신은 새로온 호스팅(hosting.saeroon.com)에 정적 웹사이트를 만들고 있습니다. 아래 규약을 따르세요.

## 워크플로

1. HTML·CSS·JS로 화면을 직접 만듭니다. 별도 스키마 변환 단계는 없습니다.
2. 문의 폼·회원·게시판·장바구니 같은 작동은 코드를 새로 짜지 말고, HTML 요소에 `data-saeroon-*` 속성을 선언해 붙입니다.
3. 배포: 배포할 폴더 **안에서** `npx @saeroon/cli deploy . --yes` 를 실행합니다.
   - 인증은 환경변수 `SAEROON_API_KEY=sk_live_…` 로 넘깁니다. `login` 은 인증을 **실행한 폴더 안**(`./.saeroon/config.json`)에만 저장하므로, 다른 폴더에서 배포하면 인증이 사라집니다.
   - `deploy ./my-site` 처럼 만든 적 없는 하위 폴더를 가리키지 마세요. `init` 은 **현재 폴더**에 파일을 만듭니다.
4. 발행: `npx @saeroon/cli site publish <slug>` 또는 hosting 대시보드의 발행 버튼.
   처음 배포한 사이트는 Draft(비공개·검색 비노출)입니다. 발행해야 공개됩니다.

## 계약 참조 (필요 시 fetch)

- 속성 전수표: https://developers.saeroon.com/docs/attributes.md
- CLI 명령: https://developers.saeroon.com/docs/cli.md
- 기능 가이드: https://developers.saeroon.com/docs/forms.md · /members.md · /boards.md · /shop.md
- 전체 인덱스: https://developers.saeroon.com/llms.txt

## 핵심 규칙

- 게시판 요소(`data-saeroon-post-list`·`data-saeroon-post-create`)에는 게시판 GUID를 담는 `data-board-id`가 반드시 필요합니다.
- 회원·게시판·쇼핑 SDK는 배포 시 자동 주입됩니다. 로컬에 SDK를 수동 설치하지 마세요.
- 문의 폼(`data-saeroon-form`)이 있는 HTML을 배포할 때는 환경변수 `SAEROON_TURNSTILE_SITE_KEY` 가 필요합니다. **이 값은 "폼 보호를 켠다"는 표시일 뿐이라 아무 값이나(예: `1`) 됩니다.** 봇 차단(Cloudflare Turnstile)은 새로온이 대신 처리하므로 사용자는 Cloudflare 계정도, 별도 키 발급도 필요 없습니다.
- **비밀 키(`sk_live_…`)를 HTML·환경변수 `SAEROON_TURNSTILE_SITE_KEY`·정적 파일 어디에도 넣지 마세요.** 서버·CLI 인증 전용이며, 배포 폴더에 남으면 사이트 주소로 그대로 공개됩니다.
- 회원·게시판·쇼핑은 사이트별 공개 키(`pk_live_…`)를 `deploy --pk` 로 넘겨야 동작합니다. **값을 지어내지 마세요.** 사이트를 한 번 배포한 뒤 https://developers.saeroon.com/keys 의 "사이트 공개 키"에서 그 사이트를 골라 발급하고, 화면이 그대로 보여 주는 `deploy … --pk` 명령을 다시 실행하면 됩니다. 키 없이 배포하면 화면은 뜨지만 로그인·글쓰기가 조용히 실패합니다.

## 금지

- 블록·스키마 카탈로그 API는 구(legacy) 스키마 사이트 전용입니다. 신규 정적 사이트 제작에 사용하지 마세요.
- 사람 인물 사진을 임의 생성해 실제 후기·팀처럼 위장하지 마세요.
