Skip to content

Getting started

Wuppy is a CMS for Astro. Content lives in your repository as Markdown files, the admin panel is served at /admin, and every change is a Git commit.

  • Node.js 22.16 or newer
  • Git
  • pnpm (recommended) or npm
Terminal window
npm create wuppy my-site
cd my-site

The new project is a copy of the starter template: an Astro site with Pages and Posts collections, a menu, SEO tags, a sitemap, RSS, search and a 404 page.

Already have an Astro site on GitHub? Run npx wuppy import instead and pick it from the list; see Existing Astro project.

Create .env next to package.json:

Terminal window
# 32+ random characters; signs sessions and preview links. Keep it stable.
WUPPY_SECRET=... # openssl rand -base64 32
# The public origin of the site (required in production).
WUPPY_URL=http://localhost:4321

All other settings are optional. See Environment variables.

Terminal window
pnpm install
pnpm dev

Open http://localhost:4321/admin. The first visit asks you to name the site and create the owner account. Optionally it creates a sample “Hello world” post. After this, public sign-up closes: new people join only by invitation.

Terminal window
pnpm wuppy doctor

doctor checks that the config loads, the content folders exist, Git is ready and WUPPY_SECRET is long enough.