mostlyserious/craftcms-sveltekit

Split monorepo bootstrap for headless Craft CMS projects with a SvelteKit frontend.

Maintainers

Package info

github.com/mostlyserious/craftcms-sveltekit

Language:TypeScript

Type:project

pkg:composer/mostlyserious/craftcms-sveltekit

Transparency log

Statistics

Installs: 0

Dependents: 0

Suggesters: 0

Stars: 0

Open Issues: 0

0.1.2 2026-07-01 16:50 UTC

This package is auto-updated.

Last update: 2026-07-08 16:19:03 UTC


README

Split monorepo bootstrap for headless Craft CMS projects with a SvelteKit frontend.

Structure

  • backend/ is the Craft CMS application and Composer root.
  • frontend/ is the SvelteKit application.
  • .ddev/ serves Craft at https://cms.<project>.ddev.site and SvelteKit at https://<project>.ddev.site.

Install

./utility/install.sh

The installer derives the DDEV project name from the folder name, writes local environment files, configures DDEV host routing, installs pnpm dependencies from the host before DDEV starts, installs Composer dependencies in DDEV, creates Craft keys, and runs Craft install. It resolves pnpm@latest through Corepack or npm exec corepack. It does not run a production frontend build.

The DDEV frontend daemon runs Vite directly with Node instead of pnpm run dev. Dependencies are installed from the host before DDEV starts, and avoiding pnpm in supervisor prevents non-TTY dependency repair prompts.

Server-side frontend requests call Craft through CRAFT_INTERNAL_HOST=http://0.0.0.0 inside DDEV. Browser-facing CMS links still use PUBLIC_CMS_URL=https://cms.<project>.ddev.site.

To run Craft install noninteractively, provide CRAFT_ADMIN_EMAIL, CRAFT_ADMIN_USERNAME, and CRAFT_ADMIN_PASSWORD. If any are omitted, the installer lets craft install/craft prompt for missing admin values.

Common Commands

ddev composer install
ddev craft up
corepack pnpm@latest install --frozen-lockfile
ddev pnpm --dir frontend run check
ddev pnpm --dir frontend test
ddev composer run check
ddev composer run pint

Run dev or build scripts only after explicit approval in agent sessions.

Public API

  • api/page/<uri>
  • api/seo/<uri>
  • api/form/<handle>
  • api/craft
  • api/navigation
  • api/footer
  • api/shared
  • api/ping

Action endpoints:

  • actions/general/session
  • actions/general/quick-edit/entry