PHPackages                             roundcube/carddav - 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. [Utility &amp; Helpers](/categories/utility)
4. /
5. roundcube/carddav

ActiveRoundcube-plugin[Utility &amp; Helpers](/categories/utility)

roundcube/carddav
=================

CardDAV adapter for connecting to CardDAV-enabled addressbooks

v5.1.3(3mo ago)27960.3k↑170.8%88[8 issues](https://github.com/mstilkerich/rcmcarddav/issues)GPL-2.0-or-laterPHPPHP &gt;=7.4.0CI passing

Since Nov 25Pushed 3w ago28 watchersCompare

[ Source](https://github.com/mstilkerich/rcmcarddav)[ Packagist](https://packagist.org/packages/roundcube/carddav)[ Docs](https://www.benjamin-schieder.de/carddav.html)[ RSS](/packages/roundcube-carddav/feed)WikiDiscussions master Synced yesterday

READMEChangelog (10)Dependencies (20)Versions (35)Used By (0)

RCMCardDAV - CardDAV addressbook for Roundcube Webmail
======================================================

[](#rcmcarddav---carddav-addressbook-for-roundcube-webmail)

[![Unit tests](https://github.com/mstilkerich/rcmcarddav/workflows/CI%20Build/badge.svg)](https://github.com/mstilkerich/rcmcarddav/workflows/CI%20Build/badge.svg)[![codecov](https://camo.githubusercontent.com/e20512806ca4265bbb71a33b396dc4272424b345a86a8f12ce795a762d31341a/68747470733a2f2f636f6465636f762e696f2f67682f6d7374696c6b65726963682f72636d636172646461762f67726170682f62616467652e737667)](https://codecov.io/gh/mstilkerich/rcmcarddav)[![Type Coverage](https://camo.githubusercontent.com/4876a8114d30348301e5693eb1e9801d6623ddb4982a07d6a2f57ec4ef2e7f5c/68747470733a2f2f73686570686572642e6465762f6769746875622f6d7374696c6b65726963682f72636d636172646461762f636f7665726167652e737667)](https://shepherd.dev/github/mstilkerich/rcmcarddav)

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

[](#requirements)

RCMCardDAV 5.x requires at least PHP 7.4. Dependencies are managed by composer, if you are interested in a list, see the [composer.json](composer.json) file.

The supported versions of roundcube and supported databases can be found in [SUPPORTED\_ENVIRONMENT.md](doc/SUPPORTED_ENVIRONMENT.md).

Installation / Uninstallation
-----------------------------

[](#installation--uninstallation)

See [INSTALL.md](doc/INSTALL.md) for (un)installation instructions.

Documentation
-------------

[](#documentation)

A (hopefully growing) documentation for various topics is found in the [doc](doc/) folder. Currently the following is available:

- [Contact groups](doc/GROUPS.md)
- [Plugin configuration by administrator](doc/ADMIN-SETTINGS.md)

Upgrade Notes
-------------

[](#upgrade-notes)

Generally (even for patch releases), when upgrading RCMCardDAV, log off from roundcube before performing the upgrade, and login again after the upgrade has been performed. During login, a potentially necessary database schema upgrade is performed, therefore the login step is important to finish the upgrade.

### Upgrading from 4.x

[](#upgrading-from-4x)

- Database migration happens automatically. However, the assignment of addressbooks to accounts uses a heuristic (see CHANGELOG.md for details) that can produce extra accounts for user-created accounts. In this case, the user will have to cleanup manually by deleting those accounts in the settings interface.
- The plugin configuration changed in a backwards incompatible way for some configurations. Please read [ADMIN-SETTINGS.md](doc/ADMIN-SETTINGS.md) for the full details on the new configuration options. Particularly mind:

    - The semantics of the URL of a preset changed for the special case where an addressbook outside the user's addressbook home was directly specified by URL (use case: shared addressbook that is not shared into the user's namespace). The new way to specify addressbooks that cannot be discovered is to use `extra_addressbooks`.
    - The discovery URL for a preset must now be given via the `discovery_url` preset attribute, `url` is not available in the preset anymore and used for the URLs of extra addressbooks.
    - The `carddav_name_only` option was removed.
    - The `rediscover_mode` option was removed. Now you can configure the new option `rediscover_time` to specify the time interval after that an addressbook re-discovery shall be performed.

### Upgrading from 3.0.x

[](#upgrading-from-30x)

- Database migration happens automatically.
- If you want more verbose than default logging, this must now be configured in `config.inc.php`. See the distributed file `config.inc.php.dist` for examples.
- For MySQL / Maria DB: If your database was created with MySQL 5.7.8 / MariaDB 10.2.1 or earlier, it likely uses the `COMPACT` row format. This makes a DB migration fail, because the index size is exceeded. Migration 12 since rcmcarddav 4.3.0 converts the row format to the current default `DYNAMIC`, but some additional settings are required in the MySQL / Maria DB configuration for increase the index key limit to 3072 bytes. See [INSTALL.md](doc/INSTALL.md)for these settings.

### Upgrading from 2.0.x

[](#upgrading-from-20x)

There is no supported upgrade path from the 2.0.x version. You need to manually remove RCMCardDAV 2.0.x, drop its tables from your database and start with a fresh installation.

### Upgrading from 1.0

[](#upgrading-from-10)

There is no upgrade path from the 1.0 version. You need to manually remove RCMCardDAV 1.0, drop its tables from your database and start with a fresh installation.

###  Health Score

65

—

FairBetter than 99% of packages

Maintenance89

Actively maintained with recent releases

Popularity51

Moderate usage in the ecosystem

Community35

Small or concentrated contributor base

Maturity75

Established project with proven stability

 Bus Factor1

Top contributor holds 81% 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 ~103 days

Recently: every ~292 days

Total

34

Last Release

91d ago

Major Versions

2.0.4 → 3.0.02018-04-17

3.0.3 → v4.0.0-alpha12020-07-21

v4.4.3 → v5.0.0-beta12022-10-16

v4.x-dev → v5.0.02023-01-14

PHP version history (3 changes)3.0.0PHP &gt;=5.6.18

v4.0.0-alpha1PHP &gt;=7.1.0

v5.0.0PHP &gt;=7.4.0

### Community

Maintainers

![](https://www.gravatar.com/avatar/ca375ba7fba191a133e70100629611d9f4277281366188c7798da7ae39d92218?d=identicon)[roundcubedev](/maintainers/roundcubedev)

![](https://avatars.githubusercontent.com/u/3405515?v=4)[Michael Stilkerich](/maintainers/mstilkerich)[@mstilkerich](https://github.com/mstilkerich)

![](https://www.gravatar.com/avatar/8f08df1b8bb6fec05a48353a1902ba6f8a37daf6f3694b5d15368e6fd8d2470f?d=identicon)[blind-coder](/maintainers/blind-coder)

---

Top Contributors

[![mstilkerich](https://avatars.githubusercontent.com/u/3405515?v=4)](https://github.com/mstilkerich "mstilkerich (1128 commits)")[![blind-coder](https://avatars.githubusercontent.com/u/3063912?v=4)](https://github.com/blind-coder "blind-coder (182 commits)")[![jorgelzpz](https://avatars.githubusercontent.com/u/776565?v=4)](https://github.com/jorgelzpz "jorgelzpz (24 commits)")[![bbraybrook-tc](https://avatars.githubusercontent.com/u/41340735?v=4)](https://github.com/bbraybrook-tc "bbraybrook-tc (5 commits)")[![diorcety](https://avatars.githubusercontent.com/u/636199?v=4)](https://github.com/diorcety "diorcety (5 commits)")[![brocktice](https://avatars.githubusercontent.com/u/467292?v=4)](https://github.com/brocktice "brocktice (4 commits)")[![kermit-the-frog](https://avatars.githubusercontent.com/u/5196352?v=4)](https://github.com/kermit-the-frog "kermit-the-frog (4 commits)")[![Tblue](https://avatars.githubusercontent.com/u/842305?v=4)](https://github.com/Tblue "Tblue (4 commits)")[![aymhce](https://avatars.githubusercontent.com/u/10333372?v=4)](https://github.com/aymhce "aymhce (3 commits)")[![madmath03](https://avatars.githubusercontent.com/u/6967675?v=4)](https://github.com/madmath03 "madmath03 (3 commits)")[![TobyLL](https://avatars.githubusercontent.com/u/8977234?v=4)](https://github.com/TobyLL "TobyLL (3 commits)")[![websafe](https://avatars.githubusercontent.com/u/412013?v=4)](https://github.com/websafe "websafe (2 commits)")[![brrrrrrrt](https://avatars.githubusercontent.com/u/4489013?v=4)](https://github.com/brrrrrrrt "brrrrrrrt (2 commits)")[![e-dschungel](https://avatars.githubusercontent.com/u/601056?v=4)](https://github.com/e-dschungel "e-dschungel (2 commits)")[![francoisp](https://avatars.githubusercontent.com/u/581678?v=4)](https://github.com/francoisp "francoisp (2 commits)")[![hudecof](https://avatars.githubusercontent.com/u/4510160?v=4)](https://github.com/hudecof "hudecof (2 commits)")[![mrjoel](https://avatars.githubusercontent.com/u/96100?v=4)](https://github.com/mrjoel "mrjoel (2 commits)")[![skrat](https://avatars.githubusercontent.com/u/5008?v=4)](https://github.com/skrat "skrat (2 commits)")[![ltsavar](https://avatars.githubusercontent.com/u/1324874?v=4)](https://github.com/ltsavar "ltsavar (1 commits)")[![lx-s](https://avatars.githubusercontent.com/u/411211?v=4)](https://github.com/lx-s "lx-s (1 commits)")

---

Tags

contactsCardDAVowncloudaddressbookdavical

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/roundcube-carddav/health.svg)

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

###  Alternatives

[symfony/lock

Creates and manages locks, a mechanism to provide exclusive access to a shared resource

514139.2M688](/packages/symfony-lock)[matomo/matomo

Matomo is the leading Free/Libre open analytics platform

21.7k38.9k](/packages/matomo-matomo)[ecotone/ecotone

Enterprise architecture layer for Laravel and Symfony — CQRS, Event Sourcing, Durable Workflows (Sagas, Orchestrators), Projections, and Outbox messaging via PHP attributes.

564576.7k51](/packages/ecotone-ecotone)[civicrm/civicrm-core

Open source constituent relationship management for non-profits, NGOs and advocacy organizations.

751291.4k42](/packages/civicrm-civicrm-core)[illuminate/broadcasting

The Illuminate Broadcasting package.

7127.2M208](/packages/illuminate-broadcasting)[logiscape/mcp-sdk-php

Model Context Protocol SDK for PHP

368116.8k12](/packages/logiscape-mcp-sdk-php)

PHPackages © 2026

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