PHPackages                             3f/eoc-server - 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. [DevOps &amp; Deployment](/categories/devops)
4. /
5. 3f/eoc-server

ActiveLibrary[DevOps &amp; Deployment](/categories/devops)

3f/eoc-server
=============

A complete CouchDB Query Server written in PHP.

1.9(10y ago)449Apache-2.0PHPPHP &gt;=5.4.0

Since Oct 29Pushed 9y ago2 watchersCompare

[ Source](https://github.com/dedalozzo/eoc-server)[ Packagist](https://packagist.org/packages/3f/eoc-server)[ Docs](http://github.com/dedalozzo/eoc-server)[ RSS](/packages/3f-eoc-server/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (4)Dependencies (1)Versions (8)Used By (0)

[![Latest Stable Version](https://camo.githubusercontent.com/070987ccf44fbf4cdb1f4907acc484de9faa66d5235f4bb4f4ccb42390397bf4/68747470733a2f2f706f7365722e707567782e6f72672f33662f656f632d7365727665722f762f737461626c652e706e67)](https://packagist.org/packages/3f/eoc-server)[![Latest Unstable Version](https://camo.githubusercontent.com/e8abd4e1a66ddf19e456a5388b89a0ba91bcc4e218561c53a0a571567bd9d569/68747470733a2f2f706f7365722e707567782e6f72672f33662f656f632d7365727665722f762f756e737461626c652e706e67)](https://packagist.org/packages/3f/eoc-server)[![Build Status](https://camo.githubusercontent.com/c76fdd406bc88fbfa1694537c4c141abd86d04df03d14f892d8a01357518caf4/68747470733a2f2f7363727574696e697a65722d63692e636f6d2f672f646564616c6f7a7a6f2f656f632d7365727665722f6261646765732f6275696c642e706e673f623d6d6173746572)](https://scrutinizer-ci.com/g/dedalozzo/eoc-server/build-status/master)[![Scrutinizer Code Quality](https://camo.githubusercontent.com/10cb79724e42d498dfb7a530eb211f1421811a3c588dc9e9f7d281347a53056b/68747470733a2f2f7363727574696e697a65722d63692e636f6d2f672f646564616c6f7a7a6f2f656f632d7365727665722f6261646765732f7175616c6974792d73636f72652e706e673f623d6d6173746572)](https://scrutinizer-ci.com/g/dedalozzo/eoc-server/?branch=master)[![License](https://camo.githubusercontent.com/d92a02fa029c5175b68861282c3be83674e50925bff3cbb692b843eb1e1e79f8/68747470733a2f2f706f7365722e707567782e6f72672f33662f656f632d7365727665722f6c6963656e73652e737667)](https://packagist.org/packages/3f/eoc-server)[![Total Downloads](https://camo.githubusercontent.com/84164c54b1acaf98a928554cec9e3247f24f20be77d73cdcdaa7935e54acb59e/68747470733a2f2f706f7365722e707567782e6f72672f33662f656f632d7365727665722f646f776e6c6f6164732e706e67)](https://packagist.org/packages/3f/eoc-server)

Elephant on Couch Server
========================

[](#elephant-on-couch-server)

EoC Server is a CouchDB's Query Server implementation made in PHP programming language. CouchDB delegates computation of views, shows, filters, etc. to external query servers. It communicates with them over standard input/output, using a very simple, line-based protocol. CouchDB launches the query server and starts sending commands. The server responds according to its evaluation of the commands. The default query server is written in JavaScript. You can use other languages by setting a MIME type in the language property of a design document or the Content-Type header of a temporary view. Design documents that do not specify a language property are assumed to be of type JavaScript, as are ad-hoc queries that are POSTed to temporary view without a Content-Type header. Using EoC Server you can finally write your views, updates, filters, shows directly in PHP. No more JavaScript, just pure PHP.

Composer Installation
---------------------

[](#composer-installation)

To install EoC Server, you first need to install [Composer](http://getcomposer.org/), a Package Manager for PHP, following those few [steps](http://getcomposer.org/doc/00-intro.md#installation-nix):

```
curl -s https://getcomposer.org/installer | php
```

You can run this command to easily access composer from anywhere on your system:

```
sudo mv composer.phar /usr/local/bin/composer
```

EoC Server Installation
-----------------------

[](#eoc-server-installation)

Once you have installed Composer, it's easy install Elephant on Couch Server.

1. Move into the directory where is located `main.js` file:

```
cd /opt/local/share/couchdb/server
```

If you are using MacPorts on Mac OS X, you can find it on `/opt/local/share/couchdb/server`, instead if you installed CouchDB from source you'll probably find it `/usr/share/couchdb/server/`. Please refer to the CouchDB installation [instructions](http://wiki.apache.org/couchdb/Installation).

2. Create a project for EoC Server:

```
sudo composer create-project 3f/eoc-server
```

CouchDB Configuration
---------------------

[](#couchdb-configuration)

You are finally ready to configure CouchDB to use EoC Server. At this point you just need to edit `local.ini`configuration file:

```
vim /opt/local/etc/couchdb/local.ini
```

Then, under the `[query_servers]` section, add the following line:

```
[query_servers]
php=/opt/local/share/couchdb/server/eoc-server/bin/eocsvr.php
```

Usage
-----

[](#usage)

To benefit of EoC Server you must use [EoC Client](https://github.com/dedalozzo/eoc-client), a PHP client library for CouchDB. Using EoC Client, you can interact with CouchDB, and you can write your views directly in PHP. You don't need to know about CouchDB internals, neither JSON, just learn EoC Client and use it. All you need is to learn the MapReduce concept and an high level guide on CouchDB.

Requirements
------------

[](#requirements)

PHP 5.4.7 or above.

Authors
-------

[](#authors)

Filippo F. Fadda -  -

License
-------

[](#license)

Elephant on Couch Server is licensed under the Apache License, Version 2.0 - see the LICENSE file for details.

###  Health Score

29

—

LowBetter than 59% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity14

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity63

Established project with proven stability

 Bus Factor1

Top contributor holds 100% 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 ~195 days

Recently: every ~148 days

Total

7

Last Release

3776d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/311248?v=4)[Filippo Fadda](/maintainers/dedalozzo)[@dedalozzo](https://github.com/dedalozzo)

---

Top Contributors

[![dedalozzo](https://avatars.githubusercontent.com/u/311248?v=4)](https://github.com/dedalozzo "dedalozzo (95 commits)")

---

Tags

couchdbcouchdb-query-servercouchdb-servermapreducephpservernosqlcouchdbview serverquery server

### Embed Badge

![Health badge](/badges/3f-eoc-server/health.svg)

```
[![Health](https://phpackages.com/badges/3f-eoc-server/health.svg)](https://phpackages.com/packages/3f-eoc-server)
```

###  Alternatives

[spatie/laravel-webhook-server

Send webhooks in Laravel apps

1.1k8.8M22](/packages/spatie-laravel-webhook-server)[felixfbecker/language-server-protocol

PHP classes for the Language Server Protocol

22476.7M6](/packages/felixfbecker-language-server-protocol)[clue/socket-raw

Simple and lightweight OOP wrapper for PHP's low-level sockets extension (ext-sockets).

35111.1M48](/packages/clue-socket-raw)[php-mcp/server

PHP SDK for building Model Context Protocol (MCP) servers - Create MCP tools, resources, and prompts

828280.5k25](/packages/php-mcp-server)[tmtbe/swooledistributed

In order to develop the api server

1.4k9.5k](/packages/tmtbe-swooledistributed)[laminas/laminas-server

Create Reflection-based RPC servers

2423.1M23](/packages/laminas-laminas-server)

PHPackages © 2026

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