sulu / sulu-demo
Sulu demo website
No longer found in upstream repository
Requires
- php: ^8.2
- ext-ctype: *
- ext-iconv: *
- doctrine/doctrine-bundle: ^2.13
- doctrine/doctrine-fixtures-bundle: ^3.6 || ^4.0
- elasticsearch/elasticsearch: 7.17.*
- friendsofsymfony/http-cache-bundle: ^3.0
- handcraftedinthealps/zendsearch: ^2.1
- jackalope/jackalope-doctrine-dbal: ^1.10 || ^2.0
- jackalope/jackalope-jackrabbit: ^2.0
- league/flysystem: ^1.1
- league/flysystem-aws-s3-v3: ^1.0
- phpcr/phpcr-migrations-bundle: ^1.5
- phpcr/phpcr-shell: ^1.6
- predis/predis: ^1.1
- rokka/imagine-vips: ^0.40.0
- scheb/2fa-bundle: ^7.2
- scheb/2fa-email: ^7.2
- scheb/2fa-trusted-device: ^7.2
- sentry/sentry-symfony: ^5.8
- stof/doctrine-extensions-bundle: ^1.8
- sulu/article-bundle: 2.6.*
- sulu/automation-bundle: ^2.2
- sulu/redirect-bundle: ^2.2
- sulu/sulu: ^2.6.26
- sulu/web-twig: ^2.4
- symfony/config: ^7.4
- symfony/dotenv: ^7.4
- symfony/flex: ^1.17 || ^2.0
- symfony/framework-bundle: ^7.4
- symfony/mailer: ^7.4
- symfony/monolog-bridge: ^7.4
- symfony/monolog-bundle: ^3.4
- symfony/runtime: ^7.4
- symfony/security-bundle: ^7.4
- symfony/twig-bundle: ^7.4
- symfony/web-link: ^7.4
- symfony/webpack-encore-bundle: ^2.0
Requires (Dev)
- jangregor/phpstan-prophecy: ^2.0
- php-cs-fixer/shim: ^3.59
- phpspec/prophecy-phpunit: ^2.1
- phpstan/extension-installer: ^1.1
- phpstan/phpstan: ^2.1
- phpstan/phpstan-doctrine: ^2.0
- phpstan/phpstan-phpunit: ^2.0
- phpstan/phpstan-symfony: ^2.0
- phpstan/phpstan-webmozart-assert: ^2.0
- phpunit/phpunit: ^11.5
- rector/rector: ^2.0
- sulu/sulu-rector: ^2.0
- symfony/browser-kit: ^7.4
- symfony/css-selector: ^7.4
- symfony/debug-bundle: ^7.4
- symfony/error-handler: ^7.4
- symfony/phpunit-bridge: ^7.4
- symfony/thanks: ^1.2
- symfony/web-profiler-bundle: ^7.4
- thecodingmachine/phpstan-strict-rules: ^2.0
Suggests
None
Provides
None
Conflicts
Replaces
- paragonie/random_compat: 2.*
- symfony/polyfill-ctype: *
- symfony/polyfill-iconv: *
- symfony/polyfill-php56: *
- symfony/polyfill-php70: *
- symfony/polyfill-php71: *
- symfony/polyfill-php72: *
- symfony/polyfill-php73: *
- symfony/polyfill-php74: *
- symfony/polyfill-php80: *
- symfony/polyfill-php81: *
- symfony/polyfill-php82: *
This package is auto-updated.
Last update: 2026-09-02 12:46:32 UTC
README
This is the official Sulu Demo. It was created to show a simple implementation of an application made with Sulu and explains the basic steps.
This project also runs here: https://sulu.rocks
For information about Sulu have a look at our Homepage: http://sulu.io/
Our documentation is available under: http://docs.sulu.io/
Used Extensions
Articles
Articles are part of the Sulu core package since Sulu 3.0, the separate SuluArticleBundle is gone. They manage content with an own URL in an admin list and support most of what pages support: templates, versioning, drafting, publishing and automation.
SuluAutomationBundle
The SuluAutomationBundle provides a way to manages future tasks which can be scheduled for entities in the Sulu-Admin. For example schedule the publishing of a page to a specific datetime in the future.
To enable automated tasks use the command task:run manually in the terminal or in a cronjob. This tasks executes the
pending automation tasks (see SuluAutomationBundle Installation Docs).
SuluWebTwig and SuluWebJS
A collection of helpful twig extensions and a tiny js component mangaement library.
Requirements
- PHP 8.2
- json extension
- xml extension
- simplexml extension
- pdo_sqlite extension (used by the Loupe search adapter)
- gd or imagick extension (needed for image converts)
- MySQL or PostgreSQL Server
- Composer
- NPM if you want to run npm tasks
Installation
git clone git@github.com:sulu/sulu-demo.git
cd sulu-demo
composer install
Configure required services
The demo requires a running MySQL instance. Search runs on SEAL with the Loupe adapter, which only needs SQLite, so no separate search server is required.
Configure your DATABASE_URL in the .env.local see .env as reference.
If you don't want to install the services yourself you can use the provided docker-compose.yml to start this services inside an own container:
docker compose up
Install fixtures
Install the demo with all fixtures by running:
bin/console sulu:build dev
Usage
Now you can try out our demo, there is no need to configure a virtual host. Just use the build in web servers:
php -S 127.0.0.1:8000 -t public config/router.php
Then you can access the administration interface via http://127.0.0.1:8000/admin. The default user and password is “admin”.
The web frontend can be found under http://127.0.0.1:8000.
Upgrading an existing Sulu 2.6 installation
The demo runs on Sulu 3.0, which stores content in database tables instead of PHPCR. An existing
2.6 database is migrated in three steps: rename ro_routes to ro_routes_old, run
bin/console doctrine:migrations:migrate to create the new content tables, and move the content
with SuluPhpcrMigrationBundle:
bin/adminconsole sulu:phpcr-migration:migrate --dry-run bin/adminconsole sulu:phpcr-migration:migrate bin/adminconsole cmsig:seal:reindex
doctrine:schema:update must not be used on Sulu 3.0, the schema comes from the shipped
migrations. The phpcr_* tables and ro_routes_old can be dropped once the migrated content
has been verified.
Tests
composer bootstrap-test-environment
composer lint
composer test
Questions? We have answers!
We've got a #Slack channel where you can talk directly to strategists, developers and designers.