Search by

michel / paper-orm-bundle

F.Michel

PaperORMBundle is a Symfony bundle that integrates PaperORM, a lightweight and performant PHP ORM.

Package info

github.com/michelphp/paper-orm-bundle

Type:symfony-bundle

pkg:composer/michel/paper-orm-bundle

Statistics

Installs: 1

Dependents: 0

Suggesters: 0

Stars: 0

Open Issues: 0

0.1.0-alpha 2026-10-28 09:19 UTC

This package is auto-updated.

Last update: 2026-10-28 12:47:29 UTC


README

Symfony integration of PaperORM: configuration, services, console commands, profiler panel.

PHP 8.2+ ยท Symfony 5.4, 6, 7

๐Ÿ“– Documentation

Install

composer require michel/paper-orm-bundle
// config/bundles.php
return [
    // ...
    Michel\PaperORMBundle\PaperORMBundle::class => ['all' => true],
];

Configuration

# config/packages/paper_orm.yaml
paper_orm:
  dsn: '%env(resolve:DATABASE_URL)%'
  debug: '%kernel.debug%'
Option Default Description
dsn (required) Database DSN, e.g. mariadb://user:pass@127.0.0.1:3306/app
debug false Record the queries, shown in the profiler
logger paper.logger Service ID of a PSR-3 logger (paper.logger writes var/log/paper.log); null disables it
entity_dir %kernel.project_dir%/src/Entity Where your entities are
migrations_dir %kernel.project_dir%/migrations Where migration files are written
migrations_table mig_versions Table recording the applied migrations
proxy_autoload false Set to true if you store loaded entities in the session

What you get

  • Michel\PaperORM\EntityManagerInterface, ready to inject.
  • paper:migration:diff, paper:migration:migrate, paper:database:create, paper:database:drop, paper:database:sync in bin/console.
  • A profiler panel listing the queries of the request.
  • The entity manager is reset between two requests in long-running workers (FrankenPHP, RoadRunner, Messenger).

Status

Alpha, follows the versions of PaperORM. Issues: github.com/michelphp/paper-orm-bundle/issues

License

MPL-2.0