ZSync

 
 

January 4, 2010 Update

ZSync is now public on GitHub!  The initial public offering is extremely rough but it will be improved over the next few weeks as integration with MoneyWell progresses.  If you review the code and find an issue please feel free to log it in the issues section of GitHub.

Overview

ZSync is an open source syncing library designed to allow easy syncing of data between an iPhone/iPod Touch and the OS X Desktop.

ZSync utilizes the BLIP library and Apple’s Sync Services to allow easy and seamless syncing of data. 

Phase I

In the first phase we are going to start with doing a slow sync of Core Data applications on the iPhone/iPod Touch with their desktop counterparts.  This will be accomplished by using BLIP to communicate between the iPhone/iPod Touch and a System Preference broadcasting on the desktop using Bonjour.

The System Preference will be designed with a plugin architecture so that multiple applications utilizing ZSync can run from the same System Preference.  The goal on the desktop is to avoid having to require the desktop application to be running to perform a sync.

Phase II

In phase two we are going to look into developing a fast sync of the iPhone Core Data application to improve performance of the syncing operation. 

Phase III

In phase three we will be looking into expanding the syncing options to include non-Core Data applications in the syncing options.  This may include (and be subject to change) duplicating the Sync Services framework onto the iPhone/iPod touch at least on a superficial level.

Who Is Using It?

Currently we have one application utilizing ZSync as a test bed for its development.  That application, developed by No Thirst Software is called MoneyWell




How Can I Help?

Right now the code is in a private GitHub repository while the initial framework and protocols are fleshed out.  This is expected to go public in January of 2010.  Until then we are keeping the development team very small so that we can flesh out the design without a lot of overhead.  Once it becomes public in January we are hoping that others who are interested in the library will be looking to assist in its development.

If you are interested in helping to develop this library I welcome you to watch for the public release in January. 

Right now we could use a graphic artist to help us with branding of the library as everyone loves a good logo :)

License Information

Once ZSync is released publicly, it will be licensed under the BSD License allow anyone and everyone to use it as they wish.





What is BLIP?

BLIP is a message-oriented network protocol that lets the two peers on either end of a TCP socket send request and response messages to each other. It's a generic protocol, in that the requests and responses can contain any kind of data you like. It's somewhat like Jabber/XMPP, and somewhat like HTTP, and a lot like BEEP.

You can read a more detailed overview of BLIP, or examine the protocol specification.


 

Open Source Syncing Library