Skip to content
Under development. UEEE and these docs are still evolving and may change.

Getting started

  1. Provision (one time): ueee init creates an R2 bucket + signing key and writes ueee.config.yaml.
  2. Add the integration to astro.config.mjs:
    import ueee from 'ueee/astro';
    export default defineConfig({ integrations: [ueee()] });
  3. Mark up the elements you want editable (see Markup contract) — this is the one step the CLI can’t do for you.
  4. Add content in src/content/<route>.yaml.
  5. Edit: run pnpm dev, open <page>?ueee=edit, change text, Save.
  6. Sync: ueee pull to land edits in git.
StepWho
Provision R2 + key + config (ueee init)CLI
Drain edits → git (ueee pull)CLI
Decide what is editable + add data-ueee markupYou — semantic authoring; no tool can infer it
Seed the content YAMLYou today; a ueee scaffold command (planned) can generate it from existing markup

The save route is server-rendered. A statically-built site needs either Astro’s output: 'server' / hybrid with the Cloudflare adapter, or the save handler folded into an existing Worker. In astro dev it works without an adapter.