Skip to content

Introduction

Sylius Starter is a set of Castor packages that turns a PHP description of your stack into a Sylius app, and gives you the tasks to drive it.

Setting up a Sylius project is rarely a single composer require. Adding the CMS plugin means pinning a version compatible with your API Platform (otherwise Composer silently falls back to a release without its JS package), adding its JS packages, registering its Stimulus controller, building the assets and running its migrations. Removing it later means doing all of that in reverse, in the right order: roll back its migrations before the code that defines them is gone, remove the package, rebuild the assets, clear the cache. Most of these steps live in a README, a blog post or someone’s memory, and each project redoes them by hand.

Sylius Starter turns each of these workflows into one command:

Terminal window
castor sylius:add cms invoicing # install, configure, migrate, build
castor sylius:remove cms # and undo it, cleanly
castor sylius:theme:setup canvas # switch the whole storefront theme

Symfony Flex recipes install and configure a package, and stop there. Sylius Starter goes further:

  • Whole workflows: Composer and Yarn dependencies, bundles, JS controllers, Doctrine migrations, assets, cache and Docker services, chained in the right order.
  • Reversible: every theme and most plugins come with a remover, so trying something out does not leave leftovers behind. Switching themes removes the previous one first.
  • Precise edits: the application is changed with AST-based transformations for PHP files and dedicated helpers for YAML, JavaScript and Symfony configuration. The helpers skip what is already there, so running a command twice does not duplicate configuration.
  • Beyond packages: features that no package provides on its own, such as Admin menu cleanup or a catalog generated by AI, are applied to your application code.

Ask Claude or Codex to “add the CMS plugin” and it has to discover the steps, read the project and edit several files, with a good chance of missing one. Give it Sylius Starter instead, and the same request becomes castor sylius:add cms: a known, tested command whose result does not depend on the agent’s guesswork.

The agent spends its tokens on what is specific to your project, and the repetitive work stays deterministic.

The built-in plugins and themes are only a starting point. Register your own with a PHP attribute in your castor.php and they show up in the same commands, interactive prompts included. See Extending.

Sylius Starter comes with ready-to-use storefront themes: general-purpose looks, and stores built around one kind of shop, from grocery and home decoration to culture and trade supplies. Each ships a light and a dark scheme, and one command installs it:

Terminal window
castor sylius:theme:setup lagoon
PreviewThemeDescription
Lagoon storefront homepage on a wide screen, light schemeLagoonAiry, product-led look in teal and aqua
Aurora storefront homepage on a wide screen, light schemeAuroraLagoon’s violet sibling, with a blue-to-violet gradient
Depot storefront homepage on a wide screen, light schemeDepotTrade supplies and B2B: a trade catalogue in white, steel and navy with a teal call to action, Outfit headings, a photo banner, department cards, catalogue lines with stock and reference, and a price break band
Drive storefront homepage on a wide screen, light schemeDriveFull-screen grocery click-and-collect store: basil green, lemon price stickers and a pick-up slot hero
Hearth storefront homepage on a wide screen, light schemeHearthHome, decoration and furniture store: terracotta clay, linen and sage, DM Serif Display headings, arched product niches and a living room photograph in the hero
Culture & Co storefront homepage on a wide screen, light schemeCultureCulture, games and entertainment: white and warm grey with a sunny yellow, Plus Jakarta Sans, a living room hero, category photo tiles, offer banners and the booksellers’ picks

Browse all the themes, by category.