Docs
CharlesCMS adds a source-backed editor to Astro. The public site can remain static; publishing uses a Cloudflare Worker connector.
Install
Package
npm install @charlescms/astroAstro config
integrations: [charlesCMS({ editablePaths: ["/demo"] })]Build
npm run buildConnector
The connector is a small Cloudflare Worker. It stores Git credentials as Worker secrets and accepts writes only for configured origins and repositories.
npx charlescms setup - GitHub uses a GitHub App ID and private key.
- GitLab uses a Project Access Token.
- The setup state is restartable through `.charlescms/connector/setup-state.json`.
Edit
Open the CMS route, connect the Worker URL, then edit the demo page.
/cms?next=/demo Open CMS demo