simplex / simplex
Modular, micro framework for PHP 7
0.2.1
2020-05-04 21:09 UTC
Requires
- php: >=7.1
- doctrine/annotations: ^1.4
- doctrine/cache: ^1.6
- filp/whoops: ^2.1
- lukasoppermann/http-status: ^2.0
- ocramius/proxy-manager: ^2.1
- php-di/php-di: ^6.1
- relay/relay: ^1.1
- symfony/config: ^3.2
- symfony/console: ^3.2
- symfony/finder: ^3.2
- symfony/psr-http-message-bridge: ^1.0
- symfony/routing: ^3.2
- vlucas/phpdotenv: ^2.4
- willdurand/hateoas: ^2.10
- zendframework/zend-diactoros: ^1.3
Requires (Dev)
- mikey179/vfsstream: ^1.6
- phpmd/phpmd: ^2.6
- phpunit/phpunit: ^6.0
- squizlabs/php_codesniffer: ^3.1
README
Simplex Framework
Note: This is a work-in-progress and the APIs will very likely change without warning
What is Simplex?
A modular, micro framework build on top of the PHP-DI dependency injection container and the Symfony Router.
- Lightweight
- Modular
- Code and convention over excessive configuration
- Compatible with PSR-7 middleware
- Out-of-box support for console commands
- Controllers as first-class citizens
- Supports route annotations
- Built-in caching
- Doctrine ORM integration (can be replaced with ORM of your choice)
- Hateoas serializer integration
Installation
Install with composer
$ composer create-project simplex/quickstart -s dev
Once installed, create a .env
file in the root directory (see the .env.dist
template).
The quickstart demo requires a Mysql database. This can be created by running the following command
$ composer init-db
Now start a webserver
$ php -S 0.0.0.0:8080 -t public public/app.php
And point your browser to http://localhost:8080/
Documentation
See the quickstart for a demo module as well as Factories for Doctrine ORM and Hateoas serializer.
Roadmap
- Provide support for defining routes in code