PHPackages                             f21/paradox - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Database &amp; ORM](/categories/database)
4. /
5. f21/paradox

ActiveLibrary[Database &amp; ORM](/categories/database)

f21/paradox
===========

Paradox is an elegant Object Document Mananger (ODM) to use with the ArangoDB Document/Graph database server.

2.4.0(11y ago)256.8k6[1 issues](https://github.com/F21/Paradox/issues)Apache-2.0PHPPHP &gt;=5.4.0

Since May 3Pushed 11y ago6 watchersCompare

[ Source](https://github.com/F21/Paradox)[ Packagist](https://packagist.org/packages/f21/paradox)[ Docs](https://github.com/F21/Paradox)[ RSS](/packages/f21-paradox/feed)WikiDiscussions master Synced 4w ago

READMEChangelogDependencies (2)Versions (11)Used By (0)

[![Paradox Logo](assets/logo.png)](assets/logo.png)

### Paradox - A beautiful ODM (Object Document Manager) for ArangoDB

[](#paradox---a-beautiful-odm-object-document-manager-for-arangodb)

Master (stable): [![Build Status](https://camo.githubusercontent.com/e3cf459cc0ce83fa71a594a3e9315b0b2ef429495a29049349ba33bfcb9c8c43/68747470733a2f2f7472617669732d63692e6f72672f4632312f50617261646f782e706e673f6272616e63683d6d6173746572)](https://travis-ci.org/F21/Paradox) Devel (unstable): [![Build Status](https://camo.githubusercontent.com/fa3d4e9214be4806914040d88333f161b95a5ea9307d73c6334946668ca1a04e/68747470733a2f2f7472617669732d63692e6f72672f4632312f50617261646f782e706e673f6272616e63683d646576656c)](https://travis-ci.org/F21/Paradox) Coverage: [![Coverage Status](https://camo.githubusercontent.com/9d558c2a28ddd861f5c0feb0979b152f85112259e5341d2b1eeaceccf5cbedb9/68747470733a2f2f636f766572616c6c732e696f2f7265706f732f4632312f50617261646f782f62616467652e706e673f6272616e63683d646576656c)](https://coveralls.io/r/F21/Paradox?branch=devel)

---

### Supported ArangoDB Version

[](#supported-arangodb-version)

2.4.0

### Welcome

[](#welcome)

Paradox is an elegant Object Document Mananger (ODM) to use with the ArangoDB Document/Graph database server. It's designed to be simple and expressive. We favor convention over configuration and eschewing passing loads of configuration options to each method. Paradox embraces AQL instead of inventing its own query language. Finally, Paradox is designed to be easy to learn and fun to use.

Paradox is inspired by [RedBean](https://github.com/gabordemooij/redbean).

This is a taste of how Paradox works:

```
$client = new Paradox\Client('tcp://localhost:8529', 'root', 'password');

$document = $client->dispense('people'); //Create a people document to be stored in the people collection
$document->set('name', 'john');
$document->set('age', 20);

$id = $client->store($document); //Save the document to the server

$document = $client->load('people', $id); //Load the document from the server

$client->delete($document); //Delete the document from the server

```

### Key Features

[](#key-features)

- Event system that exposes various events to listeners.
- Built in support for models to model domain objects.
- A debugger to quickly debug request and responses.
- Various finders to make finding documents, vertices and edges extremely simple.

### Install

[](#install)

Paradox can be installed using composer or from git.

#### Using composer

[](#using-composer)

Simply add Paradox to your `composer.json`:

```
{
    "require": {
        "F21/Paradox": "dev-master"
    }
}

```

Then use the autoloader generated by composer:

```
require_once 'vendor/autoload.php';

```

#### Cloning from git

[](#cloning-from-git)

First, install [ArangoDB-PHP](https://github.com/triAGENS/ArangoDB-PHP) by cloning it into your project. Then, include the autoloader:

```
require_once '/path/to/ArangoDB-PHP/lib/triagens/ArangoDb/autoloader.php'
\triagens\ArangoDb\Autoloader::init();

```

Simply clone this repository into your project and include the bundled autoloader:

```
require_once '/path/to/paradox/Paradox/Autoloader.php'
Paradox\Autoloader::init();

```

Hint: Since ArangoDB-PHP and Paradox uses PSR-0 for organising class files, you can use your own autoloader instead.

### Using Paradox

[](#using-paradox)

If you are new to Paradox, we recommend reading our documentation in the [wiki](https://github.com/F21/Paradox/wiki).

---

### Versioning

[](#versioning)

Paradox tracks the version of ArangoDB. For example, if Pardox is version 1.2.x, then it is expected to work with 1.2.x of ArangoDB. Note that we only track the major and minor version of ArangoDB. The patch version (last number) is independent of ArangoDB and specific to Paradox.

### Contributing

[](#contributing)

Paradox is a very new library, so your contributions (issues and pull request) are appreciated :)

When contributing, please take note of the following

- Code is to be in psr-2 standard + symfony. For a list standards, see the list on the [php-cs-fixer](https://github.com/fabpot/PHP-CS-Fixer) page.
- If you want to use php-cs-fixer, run it with `php-cs-fixer fix /path/to/project --level=all`.
- When submitting a PR, make sure you also include tests to test all code paths of your addition.

### License

[](#license)

Paradox is licensed under [Apache2](http://www.apache.org/licenses/LICENSE-2.0.html).

###  Health Score

35

—

LowBetter than 77% of packages

Maintenance19

Infrequent updates — may be unmaintained

Popularity29

Limited adoption so far

Community16

Small or concentrated contributor base

Maturity64

Established project with proven stability

 Bus Factor1

Top contributor holds 99% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~76 days

Recently: every ~58 days

Total

9

Last Release

4192d ago

Major Versions

1.4.0 → 2.0.02014-05-21

### Community

Maintainers

![](https://www.gravatar.com/avatar/5c54bc0cc2cfab1c497808d2d3cd21b4bafdbf8a5fa0a3ff79eda715c0f12ee8?d=identicon)[F21](/maintainers/F21)

---

Top Contributors

[![F21](https://avatars.githubusercontent.com/u/2263040?v=4)](https://github.com/F21 "F21 (190 commits)")[![bethrezen](https://avatars.githubusercontent.com/u/260284?v=4)](https://github.com/bethrezen "bethrezen (1 commits)")[![luebbert42](https://avatars.githubusercontent.com/u/422440?v=4)](https://github.com/luebbert42 "luebbert42 (1 commits)")

---

Tags

phpdatabasenosqlodmgraphArangoDbdocument store

### Embed Badge

![Health badge](/badges/f21-paradox/health.svg)

```
[![Health](https://phpackages.com/badges/f21-paradox/health.svg)](https://phpackages.com/packages/f21-paradox)
```

###  Alternatives

[triagens/arangodb

ArangoDB PHP client

186194.4k19](/packages/triagens-arangodb)[tbolier/php-rethink-ql

A clean and solid RethinkDB driver for PHP.

5211.7k](/packages/tbolier-php-rethink-ql)[soosyze/queryflatfile

The Queryflatfile is PHP library for simple database not SQL

181.1k1](/packages/soosyze-queryflatfile)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
