Weave Code
Code Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Evolution Laravel Package

evolution-cms/evolution

Evolution CMS is an open-source PHP content management system focused on speed, security, and flexibility. Build and manage websites with a familiar manager interface, powerful templating, plugins, and extensions, with modern development tools and an active community.

View on GitHub
Deep Wiki
Context7

Welcome to the Evolution CMS. The world’s fastest, most customizable Open Source PHP CMS. Your creative vision, no restrictions, no compromise.

Frequently asked questions about Evolution
Can I use Evolution CMS as a headless backend for my Laravel frontend?
Yes, Evolution CMS can serve as a headless CMS for Laravel. Expose its API endpoints (if available) or use middleware to proxy requests to Evolution’s core while keeping Laravel as the frontend layer. For GraphQL, you may need to bridge Evolution’s data models to Laravel’s GraphQL layer via custom resolvers. Start by isolating Evolution routes under a `/cms` prefix to avoid conflicts.
How do I install Evolution CMS alongside Laravel without breaking existing routes?
Install Evolution via Composer (`composer require evolution-cms/evolution`) and configure Laravel’s routing to delegate CMS-specific paths (e.g., `/admin`) to Evolution’s manager. Use middleware like `SubApplicationMiddleware` to proxy requests or leverage Laravel’s route model binding for hybrid workflows. Avoid overlapping route names by prefixing Evolution’s routes explicitly.
Will Evolution CMS work with Laravel 10+? Are there compatibility issues?
Evolution CMS is PHP-based and should work with Laravel 10+, but its core isn’t natively Laravel-aware. Test for PHP 8.1+ compatibility and manually bind Evolution’s service container to Laravel’s using `AppServiceProvider`. If you encounter issues with Blade/Twig conflicts, configure Evolution to use a separate templating engine or wrap its output in Laravel’s Blade directives.
How do I migrate MODX Evolution plugins to Laravel packages?
Replace MODX plugins with Laravel packages by converting snippets to Laravel services (e.g., `app/Services/ModxSnippetService`) and hooks to Laravel events. Use Evolution’s plugin system to call these services via facades or direct API calls. For complex logic, abstract the plugin’s functionality into a Laravel package and publish it to Packagist for reuse across projects.
Can I use Evolution CMS’s database with Laravel’s Eloquent ORM?
No, Evolution CMS uses its own MySQL schema, which won’t integrate directly with Eloquent. To share data, create a facade layer that translates Eloquent queries to Evolution’s API or use Laravel’s database connection switching to query both schemas. For critical data, consider syncing via Laravel’s queue system or a custom sync service.
What’s the best way to handle authentication between Laravel and Evolution?
Use Laravel Sanctum or Passport to create a unified auth system that bridges Evolution’s user database. Implement a custom guard in Laravel to validate Evolution sessions or sync user data between the two systems via API calls. Avoid session conflicts by ensuring Evolution’s cookies are scoped to its subdomain or path (e.g., `/admin`).
Does Evolution CMS support real-time updates (e.g., WebSockets) in Laravel?
Evolution CMS doesn’t natively support Laravel’s broadcasting system, but you can integrate real-time features by exposing Evolution’s events via API and pushing updates through Laravel Echo/Pusher. For example, trigger a Laravel event when Evolution’s content changes and broadcast it to connected clients. This requires custom middleware to bridge the two systems.
How do I customize Evolution’s manager UI to match Laravel’s frontend (e.g., Livewire/Inertia)?
Wrap Evolution’s manager UI in a Laravel view using an iframe or proxy requests through Laravel’s middleware to serve Evolution’s assets. For deeper integration, replace Evolution’s frontend with Livewire components that call Evolution’s API backend. Alternatively, use Inertia.js to render Evolution’s data in a Laravel Vue/React frontend while keeping the CMS logic separate.
Are there performance concerns when mixing Evolution CMS with Laravel?
Performance overhead is minimal if you isolate Evolution to specific routes (e.g., `/admin`) and avoid deep integration with Laravel’s ORM. Profile integration points like middleware, service providers, and API calls to Evolution to ensure latency stays under 100ms. For high-traffic sites, consider caching Evolution’s API responses in Laravel’s cache layer.
What alternatives exist if I need a Laravel-native CMS with similar flexibility?
For a Laravel-native solution, consider **October CMS** (Laravel-based, modular) or **PyroCMS** (built on Laravel 5.x but adaptable). If you need headless flexibility, **Strapi** (Node.js) or **Directus** (PHP) offer API-first approaches. For MODX migration, **Laravel MODX** (community packages) can help bridge legacy plugins to Laravel’s ecosystem without full CMS replacement.
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
besmartand-pro/php-quality-config
sentix/ai-chatbot
codifyo/ts-generator-bundle
mintobit/jobqueue
a4sex/maintenance-bundle
a4sex/entity-date-update
a4sex/client-identifier
a4sex/base-utilites
a4sex/key-value-storage
a4sex/micro-status
chilldev/dependency-injection-extra
datinglibre/datinglibre-app-api
biberltd/corebundle
bricre/symfony-bundle-test
biberltd/logbundle
dominium/http-adapter-bundle
dominium/google-analytics
a4sex/auto-clean-entity
christhompsontldr/laravel-inky
spatie/mailcoach-vapor