views:

12

answers:

1

I have plans to set up a website where people can create an account and create their own content. This content consists of text, images and likely audio.

Users should also be able to download an iPhone, iPad, Mac or even a Windows app that syncs with their online content, so they can view their content offline, possibly make changes to it, then sync with the online service again at a later time.

I'm having a hard time coming up with a decent architecture for the syncing part. What is the best way to communicate between the server and the apps? Should I use JSON, XML, or create my own file format? Then what about images and audio? Should I just zip everything then unpack it on the devices? Does anyone have experience with a service like this, and what was your approach?

A: 

Please don't make your own transport format. Encode the binary data in base64, then use JSON-RPC or XML-RPC for transport.

Ignacio Vazquez-Abrams