smalldb/smalldb-symfony-bundle

Symfony bundle for Smalldb

Installs: 19

Dependents: 0

Suggesters: 0

Security: 0

Stars: 2

Watchers: 1

Forks: 0

Type:symfony-bundle

v2.0 2020-08-18 20:45 UTC

This package is auto-updated.

Last update: 2021-04-18 22:16:30 UTC


README

Symfony bundle for Smalldb.

See https://smalldb.org/

Features

Smalldb Symfony Bundle integrates libSmalldb into Symfony framework, including the Security subsystem. It also provides convenient configuration and optional REST API.

Installation

First, add the bundle into your composer.json:

{
    "require": {
        "smalldb/smalldb-symfony-bundle": "*"
    }
}

Then register the bundle in your app/AppKernel.php:

class AppKernel extends \Symfony\Component\HttpKernel\Kernel
{
	public function registerBundles()
	{
		return [
			// ...
			new Smalldb\SmalldbBundle\SmalldbBundle(),
			// ...
		];
	}
}

Finally, configure the bundle — app/config/config.yml:

# See: bin/console config:dump-reference SmalldbBundle
smalldb:
    smalldb:
        base_dir: '%kernel.root_dir%/../src/AppBundle/StateMachines'
        cache_disabled: false
    flupdo:
        driver: mysql
        host: ~
        port: ~
        database: ~
        username: ~
        password: ~
        log_query: false
        log_explain: false
    auth:
        class: Smalldb\StateMachine\Auth\CookieAuth

… and enable authentication listener in app/config/security.yml:

security:
    firewalls:
        main:
            smalldb: ~

REST API can be enabled using predefined routes — app/config/routing.yml:

smalldb:
        resource: "@SmalldbBundle/Resources/config/routing.yml"

Usage

Smaldb Symfony bundle registers JsonDirBackend as smalldb service.

Therefore you may use $this->get('smalldb') to retrieve Smalldb backend in your controllers, or better inject it using @smalldb identifier in the configuration files.

Documentation

See https://smalldb.org/doc/smalldb-symfony-bundle/master/

License

The most of the code is published under Apache 2.0 license. See LICENSE file for details.

Contribution guidelines

Project's primary repository is hosted at https://git.frozen-doe.net/smalldb/smalldb-symfony-bundle, feel free to submit issues there or create merge requests.