케익코어 소개
AI와 Cake20.js·Cake20 View로 웹사이트를 제작하고 API, PostgreSQL, 테스트, 배포와 호스팅까지 관리하는 방법을 소개합니다.
케익코어란?
케익코어는 작은 웹사이트를 만들고 운영하기 위한 풀스택 웹사이트 플랫폼입니다. 웹사이트마다 프레임워크를 설치하지 않고도 Cake20 View, Cake20 UI, Tailwind CSS, API, Prisma와 스케줄 작업을 사용할 수 있습니다.
관리자는 소스 편집, 테스트, 시작과 로그 확인을 한 화면에서 처리합니다. 각 웹사이트는 독립된 폴더, PostgreSQL 데이터베이스와 Bun 프로세스를 가집니다.
Cake20.js
Cake20.js는 Cake20 View 화면 체계와 Cake20 Runtime의 빌드·서버·실행 기능을 하나로 묶어 부르는 공식 웹사이트 개발 체계입니다.
공식 Cake20.js 사이트에서 핵심 개념과 화면, 상태, API, 데이터 예제를 한눈에 살펴볼 수 있습니다.
Cake20.js 공식 사이트규칙 중심 개발
- app/pages의 파일 경로가 웹페이지 URL이 됩니다.
- server/api의 파일 이름이 HTTP method와 URL을 결정합니다.
- server/db의 *.db.ts 모델로 웹사이트 전용 DB Client를 생성합니다.
- 웹사이트 공통 함수와 타입은 shared에서 자동 import됩니다.
- HTTP, 날짜와 DB 연결은 Cake20 Runtime 내장 기능을 사용합니다.
- build와 node_modules는 Cake20이 관리하므로 직접 수정하지 않습니다.
공개 안내와 검색
Cake20 Web의 개인정보처리방침과 서비스 이용약관은 로그인 없이 각각 /privacy와 /terms에서 확인할 수 있습니다.
검색 엔진에는 공개 소개·템플릿·구독플랜·개발문서와 법률 페이지의 www canonical URL만 sitemap.xml로 안내합니다. 로그인, 관리, 검수, API와 MCP 경로는 robots.txt와 응답 헤더에서 검색 대상에서 제외합니다.
robots.txt는 검색봇에 대한 안내이며 인증이나 접근 제어를 대신하지 않습니다.
Cake20의 더 단순한 백엔드
웹사이트 백엔드는 Cake20의 파일 기반 API와 서버 개발 방식을 바탕으로 합니다. Cake20 Runtime은 그 위에 반복 설정과 운영 코드를 줄인 사용자 친화적인 규칙을 더해, 작은 웹사이트도 백엔드 인프라를 직접 조립하지 않고 완성할 수 있게 합니다.
이는 기존 백엔드 기능을 단순히 줄인 형태가 아니라, 웹사이트 사용자가 더 적은 코드로 안전하게 개발·검수·배포하도록 공통 기능과 운영 안전장치를 통합한 업그레이드입니다.
- server/api의 파일명만으로 method와 URL이 정해지고 반환값은 자동으로 HTTP 응답이 됩니다.
- DB, 인증·세션, Queue, 예약 Task, WebSocket, 파일, 메일과 결제를 설치·연결 코드 없이 기본 Runtime 기능으로 사용합니다.
- DB 모델은 복잡한 생성 설정 대신 TypeScript 객체와 z 메서드로 작성하고 Prisma Client 생성과 연결은 Cake20이 관리합니다.
- 입력 검증, 테스트 샘플, 웹사이트별 권한과 운영·검수 데이터 격리가 같은 규칙에 포함되어 단순함과 운영 안전성을 함께 제공합니다.
- 검수와 운영 빌드는 서버 소스에서 사용하는 선택 Runtime 모듈을 release에 기록합니다. 실행 프로세스는 기록된 DB, 인증, Queue, Task, 메일, Excel과 실시간 통신 모듈만 불러옵니다.
익숙한 개발 감각은 유지하면서 배포와 운영에 필요한 반복 작업을 Cake20이 맡는 것이 핵심입니다.
현재 Runtime 범위
- 웹사이트 UI는 client-rendered Vite SPA이며 SSR과 prerender는 제공하지 않습니다.
- 선택 Runtime 모듈은 release 빌드에서 자동 판별하며 사용하지 않는 모듈, 연결과 worker는 웹사이트 프로세스에서 시작하지 않습니다.
- 에디터 UI Preview는 별도 샌드박스 Vite 개발 서버와 HMR로 표시합니다.
- 프로세스 조정은 단일 manager host 기준이며 다중 host load balancing은 외부 인프라에서 구성합니다.
- Custom Domain은 사용자가 DNS를 연결하면 Cloudflare for SaaS가 TLS certificate를 관리합니다.
- 로그인·Role 접근은 package.json auth, 특수 Route Hook은 app/middleware, Job과 Task는 server/tasks, HTTP Hook은 server/hooks, WebSocket과 SSE는 server/routes에서 suffix로 구분합니다.
- Toss, Stripe와 PayPal 단건 결제는 Runtime payment 함수로 처리합니다. 정기결제와 빌링키는 현재 공통 인터페이스에 포함하지 않습니다.