AI와 함께 쓰고, 직접 검토해 발행하는 나의 웹 공간
Astro 홈페이지, 비공개 Studio, Slack과 GitHub를 연결한 기록 흐름과 선택의 이유.
만들고 싶었던 경험
공부한 내용을 오래 남기고, 만든 서비스를 직접 체험할 수 있는 개인 공간이 필요했습니다. 글 작성에는 AI를 활용하되, 아직 다듬지 않은 내용은 본인만 읽고 공개 시점을 직접 결정하고 싶었습니다.
지금 이 홈페이지가 그 첫 번째 프로젝트입니다. 방문자는 공개된 기록과 실험을 보고, 작성자는 별도의 Studio에서 비공개 내용을 검토합니다.
글이 공개되기까지
- Slack에서 Hermes와 내용을 정리하거나 Codex에 초안을 요청합니다.
- Markdown 글과 첨부파일을 GitHub 비공개 저장소에 저장합니다. 새 글은 초안으로 시작합니다.
- Studio에서 이메일 인증으로 로그인해 본문과 첨부를 읽습니다.
- 본인이 공개 발행을 선택하면 상태 변경을 커밋합니다.
- Cloudflare가 홈페이지를 빌드·배포한 뒤 방문자가 읽을 수 있습니다.
Git에 저장되는 것과 인터넷에 공개되는 것은 다른 단계입니다. 나만보기로 보관하는 글은 공개 빌드에서 제외합니다.
구성과 선택 이유
| 구성 | 역할 | 선택 이유 |
|---|---|---|
| Astro 홈페이지 | 글, 소개, 프로젝트와 작은 브라우저 실험 | Markdown으로 기록하고 정적 페이지로 제공 |
| Studio Worker | 본인 인증, 비공개 열람, 검토한 버전 발행 | 공개 사이트와 관리 기능을 따로 배포 |
| GitHub 비공개 저장소 | 글·코드·변경 이력 | AI와 직접 편집한 작업을 같은 원본에 모으기 |
| Cloudflare Access | Studio 이메일 인증 | 별도 비밀번호와 계정 시스템을 만들지 않기 |
| Slack + Hermes | 대화로 초안 작성 | 평소 쓰는 대화 흐름에서 기록 시작 |
소개와 글을 제공하는 홈페이지, Studio, 앞으로 만들 실습 앱은 한 저장소에서 관리하지만 실행 환경은 각각 선택합니다. 같은 저장소에 있다는 이유로 로그인이나 데이터베이스까지 공유하지 않습니다.
공개 여부를 다루는 방법
draft: true는 검토 중인 초안이고, visibility: private는 계속 나만보기로 보관하는 글입니다. 공개하려면 초안 상태를 해제하고 공개 범위를 선택합니다.
글 전용 첨부는 공개 정적 파일 폴더와 분리했습니다. 공개된 글의 첨부만 빌드 결과에 복사합니다. 일반 공개 이미지 폴더에 넣은 파일은 이 보호를 받지 않으므로, 비공개 파일은 글 전용 경로에 둡니다.
읽은 뒤 다른 작업이 저장소를 바꿨다면 발행을 거부하고 다시 검토하도록 했습니다. 동시에 저장된 변경을 덮어쓰지 않기 위한 선택입니다.
확인한 것과 남은 한계
자동 검사에서는 초안·비공개 글과 첨부가 공개 빌드에 없는지, 인증과 검토 버전 검사가 동작하는지 확인했습니다. 실제 계정에서는 이메일 로그인과 글 목록 열람까지 확인했습니다. 이 기록을 작성하는 시점에 Studio 버튼으로 실제 글을 발행하는 전체 과정은 아직 별도 확인이 필요합니다.
현재는 일반 Markdown과 작은 첨부파일 중심입니다. 대용량 영상 업로드와 뉴스레터 발송은 앞으로 사용 패턴에 맞춰 추가할 영역으로 남겨두었습니다.
이어서 만들 것
이 사이트를 바탕으로 AI·백엔드 실습을 하나씩 연결하려 합니다. 각 실습에는 실행 화면뿐 아니라 구조, 기술 선택, 시행착오를 함께 남깁니다. 아직 만들지 않은 서비스를 완성된 프로젝트처럼 전시하지 않고, 실제 구현한 범위부터 차곡차곡 쌓겠습니다.
이 기록은 계속 자라는 중입니다.