Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/chanmix51/Pomm

PHP Object Model Manager for Postgresql
https://github.com/chanmix51/Pomm

Last synced: about 1 month ago
JSON representation

PHP Object Model Manager for Postgresql

Awesome Lists containing this project

README

        

=================================================
POMM: The PHP Object Model Manager for Postgresql
=================================================

.. image:: https://secure.travis-ci.org/chanmix51/Pomm.png?branch=master
:target: http://travis-ci.org/#!/chanmix51/Pomm

.. image:: https://scrutinizer-ci.com/g/chanmix51/Pomm/badges/quality-score.png?s=5766ac7091629c3af205bbcca8623bd2e8cfe85e
:target: https://scrutinizer-ci.com/g/chanmix51/Pomm/

.. image:: https://poser.pugx.org/Pomm/Pomm/version.png
:target: https://poser.pugx.org/

.. image:: https://poser.pugx.org/Pomm/Pomm/d/total.png
:target: https://packagist.org/packages/pomm/pomm

.. image:: https://poser.pugx.org/pomm/pomm/license.svg
:target: https://packagist.org/packages/pomm/pomm

Note
****

This is the 1,x version of Pomm. This package is not maintained anymore, the stable `Pomm 2.0 `_ is the new generation of Pomm Model Manager.

What is Pomm ?
**************

Pomm is an open source Postgresql access framework for PHP. It is not an ORM, it is an Object Model Manager. Pomm offers an alternative approach than ORM to using database in object oriented web developments. `Read more here `_.

Pomm devel works with PHP 5.4 and Postgresql 9.0 and above.

You can reach

* `installation guide `_
* `documentation `_
* `code examples `_
* `mailing list `_

=====================
How to install Pomm ?
=====================

The easy way: composer
**********************
Using `composer `_ installer and autoloader is probably the easiest way to install Pomm and get it running. What you need is just a ``composer.json`` file in the root directory of your project:

::

{
"require": {
"pomm/pomm": "master-dev"
}
}

Invoking ``composer.phar`` will automagically download Pomm, install it in a ``vendor`` directory and set up the according autoloader.

Using Pomm with a PHP framework
*******************************

* Silex `PommServiceProvider `_
* Symfony2 `PommBundle `_

With Silex, it is possible to bootstrap a kitchen sink using this `gist `, in an empty directory just issue the command::

wget -O - 'https://gist.github.com/chanmix51/3402026/raw/3cf2125316687be6d3ab076e66f291b68b422ce7/create-pomm-silex.sh' | bash

And follow the instructions.

===========================
How to contribute to Pomm ?
===========================

That's very easy with github:

* Send feedback to `@PommProject `_ on twitter or by mail at
* Report bugs (very appreciated)
* Fork and PR (very very appreciated)
* Send vacuum tubes to the author (actual preferred are russians 6Φ12Π, 6Ж43Π, 6Ж38Π, 6C19Π)

Running tests
*************

.. code-block:: sh

psql -c 'CREATE DATABASE pomm_test' -U postgres -h 127.0.0.1
psql -c 'CREATE EXTENSION hstore' -U postgres -h 127.0.0.1 pomm_test
psql -c 'CREATE EXTENSION ltree' -U postgres -h 127.0.0.1 pomm_test

phpunit --configuration tests/phpunit.travis.xml