No description
Find a file
Markus Unterwaditzer 55c33d749b Add example config
2014-02-28 14:44:08 +01:00
vdirsyncer Add example config 2014-02-28 14:44:08 +01:00
.gitignore Add coverage.py to gitignore 2014-02-28 14:44:07 +01:00
config.example Add example config 2014-02-28 14:44:08 +01:00
LICENSE Copyright headers, more docstrings 2014-02-28 14:44:07 +01:00
README.md Add example config 2014-02-28 14:44:08 +01:00
setup.cfg Copyright headers, more docstrings 2014-02-28 14:44:07 +01:00
setup.py CLI WIP 2014-02-28 14:44:08 +01:00

This is work-in-progress.

A basic syncronization utility for vdir. Should be able to sync both CardDAV and CalDAV in the end.

How to run

Copy config.example to ~/.vdirsyncer/config and edit it. You can use the VDIRSYNCER_CONFIG environment variable to change the path vdirsyncer will read the config from.

Run vdirsyncer --help.

A little bit about the code architecture

There are storage classes which control the access to one vdir-collection and offer basic CRUD-ish methods for modifying those collections. The exact interface is described in vdirsyncer.storage.base, the Storage class should be a superclass of all storage classes.

One function in vdirsyncer.sync can then be called on two instances of Storage to syncronize them, due to the abstract API storage classes are implementing, the two given instances don't have to be of the same exact type. This allows us not only to syncronize a local vdir with a CalDAV server, but also syncronize two CalDAV servers or two local vdirs.