PHPackages                             audriga/jmap-openxport - 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. audriga/jmap-openxport

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

audriga/jmap-openxport
======================

Provides JMAP support to existing PHP-based systems, in the context of the OpenXPort project

1.7.2(2y ago)240[1 PRs](https://github.com/audriga/openxport-jmap/pulls)1MITPHPPHP &gt;=5.6

Since Apr 7Pushed 2w ago4 watchersCompare

[ Source](https://github.com/audriga/openxport-jmap)[ Packagist](https://packagist.org/packages/audriga/jmap-openxport)[ Docs](https://github.com/audriga/openxport-jmap)[ RSS](/packages/audriga-jmap-openxport/feed)WikiDiscussions main Synced 1w ago

READMEChangelogDependencies (3)Versions (15)Used By (1)

OpenXPort Data Portability Framework
====================================

[](#openxport-data-portability-framework)

The OpenXPort data portability framework simplifies development of an endpoint for data migration.

It should be simple for consumers to migrate from another service to your service and vice versa. OpenXPort makes it easy to expose a RESTful API Endpoint for data portability. It is built on top of the interoperable protocol [JMAP](https://jmap.io/), which already supports a wide variety of data types and can be extended for more.

The following data types are currently supported by OpenXPort:

- Signatures over the JMAP for Mail protocol
- Calendars over the JMAP for Calendars protocol, built on top of the [JSCalendar](https://datatracker.ietf.org/doc/html/rfc8984) format
- Contacts over the JMAP for Contacts protocol, built on top of the [JSContact](https://datatracker.ietf.org/doc/draft-ietf-calext-jscontact/) format
- Tasks over the JMAP for Tasks protocol, built on top of the [JSCalendar](https://datatracker.ietf.org/doc/html/rfc8984) format
- SieveScripts over the JMAP for Sieve Scripts protocol
- Files over the upcoming JMAP for Files protocol
- Preferences over the  Extension

OpenXPort is built with compatibility for older systems in mind. We support all PHP versions down to 5.6 to provide data portability even for older systems.

Installation
------------

[](#installation)

### Local installation

[](#local-installation)

1. Run `make` to initialize the project for the default PHP version (8.1). Use other build targets (e.g. `make php56_mode` or `make php70_mode`) instead, in case you need to build for a different version.

Development
-----------

[](#development)

### Installation

[](#installation-1)

1. Run `make` or one of the targets for old PHP versions above.
2. Run `make update` to update dependencies and make development tools available

### Tests

[](#tests)

To run all tests run `make fulltest`. This requires [Podman](https://podman.io/)(for Static Anaylsis) and [Ansible](https://www.ansible.com/) (for Integration Tests).

You can also run them separately:

- **Static Analysis** via `make lint`
- **Unit Tests** via `make unit_test`
- **Integration Tests** via `make integration_test` (more info under `tests/integration/README.md`)

###  Health Score

37

—

LowBetter than 81% of packages

Maintenance63

Regular maintenance activity

Popularity11

Limited adoption so far

Community14

Small or concentrated contributor base

Maturity52

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 59.2% 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 ~80 days

Recently: every ~87 days

Total

9

Last Release

941d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/1cf507c65ea8039474feb85e3a543f631962812a2607932b21e5cbced996f7c2?d=identicon)[audriga](/maintainers/audriga)

---

Top Contributors

[![jaudriga](https://avatars.githubusercontent.com/u/64837696?v=4)](https://github.com/jaudriga "jaudriga (113 commits)")[![gfaudriga](https://avatars.githubusercontent.com/u/114747793?v=4)](https://github.com/gfaudriga "gfaudriga (62 commits)")[![mrstanb](https://avatars.githubusercontent.com/u/18291178?v=4)](https://github.com/mrstanb "mrstanb (16 commits)")

---

Tags

migrationdata-portabilityjmapgroupware

###  Code Quality

TestsPHPUnit

Code StylePHP\_CodeSniffer

### Embed Badge

![Health badge](/badges/audriga-jmap-openxport/health.svg)

```
[![Health](https://phpackages.com/badges/audriga-jmap-openxport/health.svg)](https://phpackages.com/packages/audriga-jmap-openxport)
```

###  Alternatives

[matomo/matomo

Matomo is the leading Free/Libre open analytics platform

21.7k39.6k](/packages/matomo-matomo)[kimai/kimai

Kimai - Time Tracking

4.8k9.4k1](/packages/kimai-kimai)[tempest/framework

The PHP framework that gets out of your way.

2.3k37.6k19](/packages/tempest-framework)[api-platform/metadata

API Resource-oriented metadata attributes and factories

275.5M254](/packages/api-platform-metadata)[cycle/database

DBAL, schema introspection, migration and pagination

71811.3k65](/packages/cycle-database)[symfony/ai-store

Low-level abstraction for storing and retrieving documents in a vector store.

22443.1k141](/packages/symfony-ai-store)

PHPackages © 2026

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