This is a good effort and it's always good to see people using a SCM repository as a collaborative document store. Even better that it has such a nice simple command-line.
However, all four things that make Dropbox Dropbox for me are missing:
* A UI so straightforward that my technophobic mother-in-law (or even a project manager) can use it
* Block-level sync (in particular, the rsync algorithm) with server-side dedupe on binary files (git is suboptimal in my experience on large binaries, and it's unclear whether this project resolves the issue). Incidentally, integrating that with simple versioning behaviour is what lifts dropbox into the "Ooh, clever, I see what you did there" category for me.
* Local-area peer-to-peer sync.
* Click-to-share instant access granting.
Building an open-source tool that has all four is on my to-do list. Unfortunately it's quite far down that list. Anyone else having a crack at it?
I'm having a go, as a side-side project, at defining a strictly RESTful protocol for implementing DropBox-like functionality - I'm building client and server components which will be FOSS. I started this mainly as a learning experience for designing a strictly RESTful interface, but I plan to use it personally. Some random notes:
- Strictly RESTful interface (HATEOS, single base URL, server controlled namespaces)
- Simplicity over performance - easy to do everything on the command line using curl
- Supports block level transfers
So far this has stricly been for my own amusement/education - happy to write something up and put the code on github if anyone is interested.
While I was repeating myself a bit there I meant to get across that when I started I thought I knew what a RESTful interface was (nice URLs, HTTP GET/POST/PUT/DELETE) then I discovered that the term is used pretty loosely and a lot of what are described RESTful interfaces aren't really anything like what Roy Fielding meant.
However, all four things that make Dropbox Dropbox for me are missing:
* A UI so straightforward that my technophobic mother-in-law (or even a project manager) can use it
* Block-level sync (in particular, the rsync algorithm) with server-side dedupe on binary files (git is suboptimal in my experience on large binaries, and it's unclear whether this project resolves the issue). Incidentally, integrating that with simple versioning behaviour is what lifts dropbox into the "Ooh, clever, I see what you did there" category for me.
* Local-area peer-to-peer sync.
* Click-to-share instant access granting.
Building an open-source tool that has all four is on my to-do list. Unfortunately it's quite far down that list. Anyone else having a crack at it?