- How do I install Statamic CMS in an existing Laravel project?
- Run `composer require statamic/cms` in your Laravel project’s root directory. Follow the [official installation guide](https://statamic.dev/installation) to configure the package, publish assets, and set up your first site. Ensure your Laravel version is 9+ (13+ recommended for full compatibility).
- Can I use Statamic with Laravel 10 or 11?
- Yes, Statamic supports Laravel 9+, but some features (like CSRF route fixes) require Laravel 13+. Test thoroughly if using versions below 13, as edge cases may arise. Check the [release notes](https://github.com/statamic/cms/releases) for version-specific details.
- What’s the difference between this package and the Statamic application repo?
- This `statamic/cms` package is for adding Statamic to an **existing Laravel app**. The [Statamic application repo](https://github.com/statamic/statamic) is a preconfigured Laravel starter with Statamic built-in, ideal for new projects. Use the CLI (`statamic new`) for the latter.
- How does Statamic’s Git-powered content management work?
- Statamic stores content in flat files (Markdown, YAML, JSON) within your Git repository. Editors collaborate via pull requests, and deployments sync content changes automatically. Git is optional but recommended for teams; database-only mode lacks collaboration features like avatars or publish tabs.
- Does Statamic support custom fieldtypes or addons?
- Yes, Statamic is highly extensible. Use [blueprints](https://statamic.dev/blueprints) to define custom fields, and leverage [addons](https://statamic.dev/addons) for reusable functionality. Recent fixes (e.g., blueprint cache collisions) reduce conflicts when developing custom fieldtypes.
- Can I use Elevated Sessions or 2FA for frontend users in Laravel?
- Yes, Statamic’s Elevated Sessions and 2FA integrate with Laravel’s auth ecosystem (Sanctum, Breeze). These features extend beyond the Control Panel (CP) to secure frontend areas like member portals. Disable them via `statamic.cp.elevated_sessions=false` if unused.
- How do I migrate from a database-driven CMS to Statamic?
- Use the [Statamic Migrator](https://github.com/statamic/migrator) tool to import content from other systems (WordPress, Craft, etc.). Pilot migrations in staging first, as data mapping may require custom scripts. Review the [migration guide](https://statamic.dev/migrator) for step-by-step instructions.
- Is Statamic suitable for headless or API-driven projects?
- Absolutely. Statamic’s API (REST and GraphQL) is stable and well-documented. Use [NavBuilder](https://statamic.dev/nav-builder) for dynamic navigation, and leverage Laravel’s routing to serve content via API endpoints. The CP remains optional for headless setups.
- What are the system requirements for Statamic?
- Statamic requires PHP 8.1+, Laravel 9+ (13+ recommended), and Git (for content storage). Node.js is needed for the Vue.js-based Control Panel UI, but Laravel Mix/Vite handles asset compilation. Check the [system requirements](https://statamic.dev/requirements) for full details.
- How do I handle multi-author workflows in Statamic?
- Statamic’s Git integration enables pull request-based collaboration. Features like **Collaboration Avatars**, **persistent publish tabs**, and **Combobox 2.0** improve the Control Panel (CP) UX for teams. Train editors on Git workflows (branching, PRs) for seamless collaboration.