/enhavo

Modern CMS with shop features based on fullstack symfony and sylius components

Primary LanguagePHPMIT LicenseMIT

alt text

License Continuous Integration Scrutinizer Code Coverage Version

The enhavo CMS is a open source PHP project on top of the fullstack Symfony framework and uses awesome Sylius components to serve a very flexible software, that can handle most of complex data structure with a clean and usability interface.

Enhavo is still under heavy development and we can't guarantee for backward compatibility or security issues nor is our documentation up to date. So we advice you to not use the software for production until we reach a stable release.

Get started

If you just want to use enhavo, you don't need to install this repository. Read the Get Started tutorial to install your own enhavo application.

Demo

If you want to check the enhavo look and feel. Take a look at our demo on demo.enhavo.com

User Password
admin@enhavo.com admin

Contribute

Help us to develop the software. This is the main repository of the enhavo project. Feel free to open tickets or pull requests or just give us feedback. If you are a github user, you can star our project.


If you want to contribute code, you need to run the main repository. Make sure you have installed composer and yarn on your local machine. Fork and clone the repo and add a .env.local file containing your database credentials.

DATABASE_URL=mysql://db_user:db_password@127.0.0.1:3306/enhavo

And a test config .env.test.local containing your test database credentials.

DATABASE_URL=mysql://db_user:db_password@127.0.0.1:3306/enhavo_test

Execute following commands on your shell:

$ composer install
$ yarn install
$ yarn encore dev
$ yarn routes:dump
$ bin/console doctrine:database:create
$ bin/console doctrine:database:create --env=test
$ bin/console doctrine:migrations:migrate
$ bin/console doctrine:migrations:migrate --env=test
$ bin/console enhavo:init
$ bin/console enhavo:user:create --super-admin

Make your changes and run the tests.

$ bin/phpunit
$ bin/behat
$ bin/mocha
$ bin/karma

Testing stack

Depending on what you are going to test, choose the right tool.

<----------------------------- Behat ---------------------------------------->
<------------- PHPUnit ---------------->
                                        <------------- Karma ---------------->
                                        <------ Mocha --->
[**** Database ****][**** PHP File ****][**** JS File ****][**** Browser ****]

Documentation

The documentation is available at docs.enhavo.com.


If you want to contribute to the documentation you need sphinx. Read sphinx-doc.org to install it. For the --watch option you have to install sphinx-autobuild.

Fork and clone this repository and make your changes under docs/source. After each change run following command and open the build/docs/index.html in your browser to see and valid your changes.

$ bin/docs
$ bin/docs --watch

MIT License

License can be found here.