AI 코딩 도구라면: 아래 '단계 지도'부터 따른다. 이 위쪽은 사람을 위한 소개다.
RIDM Apps 호스팅 + DB · 바이브코딩 시리즈 · 무료 공개 전자책
코드 한 줄 몰라도 됩니다. AI 코딩 도구에게 시작 문장 한 줄을 건네면, AI 가 이 책을 단계별로 읽으며 가입·로그인과 회원 전용 메모장을 만들고 RIDM Apps(앱 호스팅)에 올려 내앱.ridm.ai 주소로 공개합니다. AI API 는 쓰지 않습니다 — 호스팅과 DB 만으로.
https://console.hrum.ai/hostingEbook/ 을 열고, 그 지도의 단계 순서대로 해당 페이지만 읽으며 [AI 시작 지침]대로 나와 함께 회원 전용 메모장 웹앱을 만들어줘. 코드는 내가 제작 결정서를 승인한 뒤에만 써.
HRUM 콘솔 가입(결정서에서 고르면 GitHub 가입도), 이메일 인증, 약관 동의, 비밀번호 같은 비밀값 입력은 여러분이 직접 합니다. AI 가 대신 가입하거나 결과를 보장하지는 않습니다.
npm run check 한 번에 책 코드 대조 → 빌드 → 테스트 → npm audit실제 PostgreSQL 과 자동 테스트로 가입·메모·회원 격리를 검증한 코드입니다. AI 는 이 코드를 옮겨 쓰지 않고 책 그대로 받습니다.
AI 채팅이나 사주 앱을 만들고 싶다면 이 책이 아닙니다 — 전자책 고르기에서 맞는 책을 고르세요.
여기부터 AI용 지도 — AI 코딩 도구는 이 아래를 따른다
핵심 규칙 — AI 는 어느 페이지에서든 이것을 지킨다
node scripts/get-book-code.mjs 가 책 그대로 만든다(첫 실행은 부록 A-2 의 curl 한 줄). AI용 분할본의 코드 자리는 " 경로" 한 줄이다 — 그 파일을 cat 으로 읽는다. 고쳐도 되는 파일은 PART 0 [AI 시작 지침] 5-b 의 목록뿐이다.node scripts/verify-book-code.mjs 를 실행해 "불일치 0개" 출력을 그대로 보인다.이 지도는 AI 코딩 도구가 읽는 분할본의 첫 페이지입니다. 아래 단계 순서대로, 지금 단계에 적힌 페이지만 열어 읽습니다. 다음 단계 페이지는 지금 단계의 "끝났다는 증거"(명령 출력)를 사용자에게 보인 뒤에 엽니다. 각 페이지 머리에 핵심 규칙과 "이 페이지 전에 읽을 페이지"가 있습니다.
node scripts/verify-book-code.mjs 부터 실행한다. 규칙을 잊지 않도록 0단계 PART 0 사용법·AI 시작 지침 는 다시 읽는다.| 단계 | 읽을 페이지 | 끝났다는 증거(명령 출력) | 다음 |
|---|---|---|---|
| 0. 규칙 | PART 0 사용법·AI 시작 지침 | 명령 없음 — 핵심 규칙과 [AI 시작 지침] 0~7 을 읽었다(사용자에게 보낼 첫 메시지는 1단계 페이지를 읽은 뒤의 4-0 결정 질문) | 1단계 |
| 1. 준비·결정서 | PART 1 계정 준비 PART 2 기본기 PART 3 컨셉·디자인 PART 4 결정서·마스터 스펙 PART 9 운영·비용 | 4-0 결정 항목을 한 메시지로 → [제작 결정서]에 대한 사용자의 명시적 승인("승인"·"이대로 진행")과 PROGRESS.md 의 결정서 사본. 유료화는 9-2 대로 결정서에 적는다. 계정 게이트(PART 1 — 콘솔 이메일 인증까지)는 사용자의 "완료" 답 | 2단계 |
| 2. 코드 받기 | 부록 A 스펙·코드 받기(A-2) | node -v → v22.12 이상 · 새 프로젝트 폴더(1단계의 PROGRESS.md 만 있어도 됨)에서 A-2 의 curl 한 줄 → "[완전 코드] N개 — 새로 만듦 N · 책 원문으로 되돌림 0 · 책과 다름 0" · git init -b main · node scripts/verify-book-code.mjs → "[완전 코드] N개 확인 — 불일치 0개" · npm install 오류 없음 | 3단계 |
| 3. 회원·메모 화면 | PART 5 회원 기능 PART 6 메모 기능 | 수정 허용 파일만 결정서대로 고친 뒤 npm run build 에러 0 · npx vitest run 전부 통과 · node scripts/verify-book-code.mjs → "불일치 0개" · 5-3 의 로컬 DB + npm run start 로 띄운 앱에 node scripts/smoke-live.mjs http://localhost:3000 --quick 실패 0개 · 같은 실행에서 메모 2개 이상인 390px·1280px 메모 화면 스크린샷(가로 넘침 0). 로컬 DB 가 없으면 smoke·메모 화면은 "미실행(로컬 DB 없음)", 스크린샷은 로그인 화면으로 | 4단계 |
| 4. 보안·테스트 | PART 7 보안·테스트 | npm run check 전부 통과 + DB 테스트 한 줄(5-f) · node scripts/smoke-live.mjs http://localhost:3000 --quick 실패 0개(로컬 DB 가 없으면 "미실행(로컬 DB 없음)") · git ls-files | grep -E "(^|/)\.env" → .env.example 만(아직 한 번도 커밋하지 않았다면 빈 출력도 정상 — 8-1 에서 스테이징한 뒤 다시 확인) | 5단계 |
| 5. 배포 | PART 8 배포 | curl -s -A "Mozilla/5.0" https://이름.ridm.ai/api/health 의 commit = git rev-parse HEAD · node scripts/smoke-live.mjs https://이름.ridm.ai 실패 0개 | 6단계(결정서에 관리자 페이지가 없으면 완료 보고 5-f) |
| 6. 선택 기능 — 결정서에 관리자 "켬"일 때만 | 부록 B-7 관리자 페이지 | B-7 완료 기준 · 다시 npm run check 통과 · push 뒤 health commit 일치 · node scripts/smoke-live.mjs https://이름.ridm.ai --admin <ADMIN_PATH 값> 실패 0개 · 사용자가 브라우저로 관리자 숫자 확인 | 완료 보고(PART 0 5-f) |
| 7. 운영·개정 — 필요할 때만 | 부록 D 트러블슈팅 부록 E 앱 DB 테이블 늘리기 | 개정: verify 가 "다름"이면 PART 0 지침 5-b 의 네 단계 → npm run check 통과 → push. 막힘: 부록 D 조치 뒤 그 단계의 증거를 다시 보인다. 테이블 추가: 부록 E 뒤 npm run check(테스트 DB 가 있으면 TEST_DATABASE_URL 과 함께) · node scripts/verify-book-code.mjs → "불일치 0개" | 해당 단계로 돌아간다 |
본문이 "8-3 참조"처럼 다른 섹션을 가리키면 이 표로 페이지를 찾는다. [AI 시작 지침] 0~7(5-b 개정 절차·5-f 완료 보고 포함)은 PART 0 사용법·AI 시작 지침 에 있다.
| 번호 | 섹션 | 페이지 |
|---|---|---|
| 1-1 | HRUM 콘솔 가입과 이메일 인증 | PART 1 계정 준비 |
| 1-2 | 도구 선택 — 셋 중 하나면 충분 | PART 1 계정 준비 |
| 1-3 | 코드 보관 고르기 — GitHub 는 선택 | PART 1 계정 준비 |
| 1-4 | RIDM Apps — 여러분 앱이 올라갈 곳 (미리 알아두기) | PART 1 계정 준비 |
| 2-1 | 바이브코딩이 실패하는 세 가지 이유 | PART 2 기본기 |
| 2-2 | 마법의 문장들 (불평 사전) | PART 2 기본기 |
| 3-1 | 컨셉 한 줄 공식 | PART 3 컨셉·디자인 |
| 3-2 | 디자인 고르기 — 갤러리에서 훔쳐오는 법 | PART 3 컨셉·디자인 |
| 4-0 | 개발 전 필수 결정 — AI가 코드를 치기 전에 반드시 물어야 하는 것들 (기술 + 창작 4 + 코드 보관) | PART 4 결정서·마스터 스펙 |
| 4-1 | 붙여넣기 전에 채울 것 (4-0의 결정서 하나에서 그대로 옮겨 담기) | PART 4 결정서·마스터 스펙 |
| 4-2 | 마스터 스펙 프롬프트 (부록 A에 전문 — 여기선 실행) | PART 4 결정서·마스터 스펙 |
| 4-3 | 나왔는지 검증 (완료 기준 체크) | PART 4 결정서·마스터 스펙 |
| 5-1 | DB와 로그인 — 뼈대 파일 | PART 5 회원 기능 |
| 5-2 | 가입·로그인·복구 화면 | PART 5 회원 기능 |
| 5-3 | 로컬 DB 준비와 완료 기준 — 회원 기능 | PART 5 회원 기능 |
| 5-4 | 회원 탈퇴 — 회원이 자기 데이터를 지운다 | PART 5 회원 기능 |
| 6-1 | 메모가 동작하는 방식 | PART 6 메모 기능 |
| 6-2 | 한도 — 서버가 다시 검사한다 | PART 6 메모 기능 |
| 6-3 | 메모 화면 | PART 6 메모 기능 |
| 6-4 | 완료 기준 — 메모 기능 | PART 6 메모 기능 |
| 6-5 | 흔한 함정 | PART 6 메모 기능 |
| 7-1 | 가장 흔한 사고 — 주소의 숫자만 바꿨는데 남의 글이 보인다 | PART 7 보안·테스트 |
| 7-2 | 4중 방어선 | PART 7 보안·테스트 |
| 7-3 | 셀프 보안 점검 (배포 전 3분) | PART 7 보안·테스트 |
| 7-3-1 | 배포 전 보안 점검표 — 입력·한도·격리 (3분) | PART 7 보안·테스트 |
| 7-3-2 | AI에게 코드를 시킬 때 같이 붙여 넣을 보안 지시문 · 검수 체크리스트 | PART 7 보안·테스트 |
| 7-4 | 그래도 뭔가 샜다면 (1분 응급처치) | PART 7 보안·테스트 |
| 7-5 | 자동 테스트 — 격리·Origin·요청 제한·로그인 (손 테스트 금지) | PART 7 보안·테스트 |
| 7-6 | 배포 전 기록·격리 체크 (3분) | PART 7 보안·테스트 |
| 8-0 | 배포 파일 — 저장소 루트에 둔다 | PART 8 배포 |
| 8-1 | GitHub에 올리기 — 웹 배포에 필요 | PART 8 배포 |
| 8-2 | RIDM Apps 신청과 연결 | PART 8 배포 |
| 8-3 | 배포 후 스모크 테스트 | PART 8 배포 |
| 8-4 | 앱 운영하기 | PART 8 배포 |
| 8-5 | 출시 방법 고르기 — 웹 · 앱 · 토스 미니앱 (선택 · 결정서 범위 밖) | PART 8 배포 |
| 8-6 | 내 도메인으로 열기 — 연결 또는 구매 (선택 · 결정서 범위 밖) | PART 8 배포 |
| 9-1 | 호스팅 플랜과 비용 | PART 9 운영·비용 |
| 9-2 | 결제 붙이기 — PG사와 직접 계약 | PART 9 운영·비용 |
| 9-3 | 대성공하면? — 이 구조가 버티는 범위와 증축 시점 | PART 9 운영·비용 |
| A-2 | 책 코드 받기 — 나머지 뼈대 파일과 도구 스크립트 | 부록 A 스펙·코드 받기(A-2) |
| B-7 | 관리자 페이지 (회원 관리·정지·요약 숫자) | 부록 B-7 관리자 페이지 |
| E-1 | 두 번째 기능 붙이기 — 예: 할 일 목록 (todos) | 부록 E 앱 DB 테이블 늘리기 |
| E-2 | 용량과 점검 | 부록 E 앱 DB 테이블 늘리기 |
| E-3 | 이 구조의 숨은 장점 | 부록 E 앱 DB 테이블 늘리기 |