Conduit (software)

Conduit is an open-source synchronization program for GNOME. It allows the user to synchronize information to and from various destinations. For instance, it can be used to synchronise photos on the users computer with various websites (such as Flickr, Picasa and SmugMug). Other types of information may be synchronized, such as files, folders, RSS feeds, emails, notes, contacts, calendars, and tasks. The program uses a drag-and-drop interface to give a visual representation of what is going to be done.

Goals
The developers of Conduit aim to provide a complete solution to keeping all of a user's information synchronized, regardless of where and how the data is stored. By creating a generic framework for synchronization, current problems with synchronization may be avoided where the tools are specific to a device/website/software and so the information can only be moved in a very restricted way.

How Conduit works
Conduit works by having a collection of data providers and data conversions. Data providers can represent all sorts of resources, such as an MP3 player attached to a computer, a website, or a program residing on a computer. They have data types, such as image, contact, or note, and are also defined to be either a source, a sink, or both. When the user tries to connect a source data provider and a sink data provider, Conduit will try to allow this connection using the conversions it has available to it. Conduit uses a number of fundamental data types so that a conversion only has to be created once, and can be reused for any data providers that use that data type.