vdirsyncer
Synchronize calendars and contacts
Decision gist · record as of 2026-08-14
Yes, if you need reliable calendar and addressbook synchronization between servers and local storage. The low install friction, permissive license, and support for modern Python versions make it straightforward to set up. However, the aging maintenance status (351 days since last release) means you should verify compatibility with your specific servers and be prepared for slower issue resolution if problems arise.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires Python 3.8 or later; also requires network access to the calendar/addressbook servers you intend to synchronize with.
- Low install friction with a pure-Python wheel.
- Maintenance status is aging—the latest release was 351 days ago—so expect slower response to issues, though the package remains functional across modern Python versions (3.8–3.13).
License · maintenance · safety
BSD-3-Clause (permissive) — Licensed under BSD-3-Clause (permissive), so you can use, modify, and redistribute vdirsyncer freely in both open and closed projects, provided you include the license notice.
last release 2025-08-28 (351 days)
0 known vulnerabilities (OSV.dev, 2026-08-14) · 159,127 downloads/mo, #10,707 on PyPI
Alternatives
Verify before relying
pip install vdirsyncer
vdirsyncer discover
vdirsyncer sync- Whether the aging maintenance status (351 days since last release) affects reliability with newer CalDAV/CardDAV server implementations.
- Specific server types and authentication methods supported beyond the general 'variety of servers' claim in the description.
What it is and what it does
Vdirsyncer is a command-line synchronization tool designed to keep calendars and addressbooks in sync across multiple sources—typically a server and your local filesystem, or two servers directly. It works by pulling calendar and contact data from remote servers, storing it locally, allowing you to edit it with your preferred local tools, and then pushing changes back to the server. The package depends on click, click-log, requests, aiohttp, and aiostream to handle CLI interaction, HTTP communication, and asynchronous operations.
The tool is positioned as the calendar-and-contacts equivalent of OfflineIMAP for email: it enables an offline-first workflow where you maintain a local copy of your calendar and contacts, work on them with any compatible application, and let vdirsyncer handle the bidirectional synchronization. It supports a variety of server types and can also synchronize between two servers without a local copy, making it flexible for different workflow needs.
Use it for
- Synchronize a CalDAV server calendar to a local folder, edit events with a local calendar app, then sync changes back.
- Keep an addressbook from a CardDAV server in sync with local contact files for offline access and editing.
- Mirror calendars or addressbooks between two different servers without storing a local copy.
- Maintain an offline backup of calendars and contacts while working with them in local tools.
- Integrate calendar and contact synchronization into a personal data management workflow using command-line automation.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes, if you need reliable calendar and addressbook synchronization between servers and local storage.
The low install friction, permissive license, and support for modern Python versions make it straightforward to set up. However, the aging maintenance status (351 days since last release) means you should verify compatibility with your specific servers and be prepared for slower issue resolution if problems arise.
Install
vdirsyncer on PyPI
Before you install
Low install friction with a pure-Python wheel. Maintenance status is aging—the latest release was 351 days ago—so expect slower response to issues, though the package remains functional across modern Python versions (3.8–3.13).
Requires Python 3.8 or later; also requires network access to the calendar/addressbook servers you intend to synchronize with.
License in practice
Licensed under BSD-3-Clause (permissive), so you can use, modify, and redistribute vdirsyncer freely in both open and closed projects, provided you include the license notice.
Quickstart
pip install vdirsyncer
vdirsyncer discover
vdirsyncer sync
Verify before relying
- Whether the aging maintenance status (351 days since last release) affects reliability with newer CalDAV/CardDAV server implementations.
- Specific server types and authentication methods supported beyond the general 'variety of servers' claim in the description.
Package facts
| License | BSD-3-Clause permissive |
| Python support | Supports the current Python release >=3.8 |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | 5 packagesclickclick-logrequestsaiohttpaiostream |
| Maintenance | Aging 351 days since the last release |
| First released | |
| Downloads | 159,127 / month, #10,707 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Development Status :: 4 - BetaEnvironment :: ConsoleOperating System :: POSIXProgramming Language :: Python :: 3Programming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.8Programming Language :: Python :: 3.9Topic :: InternetTopic :: Office/Business :: SchedulingTopic :: Utilities |
Evidence: vdirsyncer-0.20.0-py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “calendar sync tool”
- vdirsyncerVdirsyncer is a command-line tool that synchronizes calendars and…
- caldavA CalDAV (RFC4791) client library for Python that lets you create,…
- gcal-syncAn asyncio library for reading and syncing Google Calendar events to…
Give your agent the search over MCP, or paste the wish link into any chat.
More Internet packages
Botocore provides low-level, data-driven access to Amazon Web Services APIs, serving as the foundation for the AWS CLI and boto3 libraries.
Install it if you need programmatic access to AWS services.
Provides an async client for AWS services using botocore and aiohttp, allowing you to call AWS APIs asynchronously within asyncio-based applications.
Install it if you need to call AWS services from async Python code; it is the standard way to do so.
Pydantic validates Python data structures against type hints, coercing and checking input at runtime to ensure it matches a declared schema.
Provides a platform-independent file locking mechanism to coordinate access to files across processes and threads.
FastAPI is a Python web framework for building REST APIs using type hints, with automatic request validation, serialization, and interactive API documentation.
Provides common Protocol Buffer message definitions used across Google Cloud APIs, enabling Python clients to interact with Google services.
See also caldav · dirsync · icalendar · vobject · ics · workalendar · sysrsync · icalendar-searcher · recurring-ical-events · rucio-clients