COOPY » a toolbox for cooperative data
COOPY: cooperative data

COOPY API

ssdiff and sspatch let you compare and “patch” spreadsheets. For folks who are comfortable with the command line: you can use ssdiff and sspatch as services, without installing them, as follows. Assume we have the following three files (download as zip):
Here's how Alice could merge the changes Bob has made into her version, without losing changes she has already made.

diff: see what Bob changed

curl -F "file1=@root.xls" -F "file2=@bob.xls" \
  http://gut.find.coop/diff/ > bobs_mods.tdiff
The generated file bobs_mods.tdiff has a summary of changes made by Bob.

patch: apply Bob's changes

curl -F "file1=@alice.xls" -F "file2=@bobs_mods.tdiff" \
  http://gut.find.coop/patch/ > alice_and_bob.xls
The generated file alice_and_bob.xls is a copy of alice.xls with Bob's changes applied.

supported formats

CSV, Sqlite, Excel (via gnumeric's libspreadsheet), Access (diff only).

gut?

This service is inspired by Max Ogden's gut servers, and written during #odhd.

limitations

There is a 10-second timeout. If a process does not complete in 10 seconds, you get nothing back. Ideally, you'd be able to specify options to save the server work (for example, if your data has a key!). For now, you'll need to download the toolbox for that.
Fork me on GitHub