← All changes

SummerCMS 0.1.1

v0.1.12 min read

Highlights

This is the first tagged release of SummerCMS. It lays down the foundation of the framework: compiled plugins with a WinterCMS-shaped structure, a schema-driven admin backend with an embedded Vue SPA, the summer CLI and a set of service modules, all built into a single Go binary.

Added

  • Plugins and app structure: plugins implement pact capability interfaces, party registers and boots them in dependency order, backpack holds config, services and events, and summer.yaml generates the app's main.go. summer make:plugin, plugin:add and generators for models, migrations, commands, jobs and admin controllers scaffold Winter-shaped code.
  • Configuration and data: layered YAML config with SUMMER_ environment overrides (compass); a shared Postgres pool, per-plugin migrations and rollback, model helpers, Laravel-style validation rules, encrypted and JSON casts, pagination and file attachments (lagoon).
  • HTTP: routing with route groups, typed path params, constraints, rate limiting, body limits, path-scoped CORS and route:list (surf); JSON helpers that keep responses compatible with a Laravel backend (wire).
  • Authentication: JWT minting, refresh and blacklisting with separate admin and user guards (bouncer), plus an OAuth authorization server for MCP clients (wristband).
  • Admin backend: cabana compiles Winter-style YAML list, form, filter and relation definitions and serves them as a JSON API to the embedded admin SPA at backend.uri. Lists search, sort, filter, page and bulk-delete; forms cover tabs, toggles, relation fields, settings pages, a relation manager, toolbar and widget actions, a datepicker, file uploads, and hasMany child records edited in modals with deferred binding until the parent is saved.
  • Services: background jobs and a scheduler on River (conga, queue:work, schedule:run), realtime broadcasts via Centrifugo (lighthouse), Web Push (flare), search index sync with Typesense (beachcomber), transactional mail (postcard), translations with pluralization (phrasebook), a typed event bus (festival) and an SSRF-guarded HTTP client (fetchguard).
  • CLI and tooling: bonfire console commands, summer dev watch-and-rebuild, admin admin:create and password-reset commands, and tide for recording and replaying HTTP traffic against a reference backend.
  • Documentation: summer docs:build and docs:serve render the docs site, including Setup, Architecture, Plugins, Database, Services, Backend and Console sections, a Coming from WinterCMS concept map and an acme.blog walkthrough plugin.
Subscribe via RSS