Cross platform and bandwidth efficient file backups.
The Awesome Backup System (ABS) is a cross platform file backup solution. It consists of a server and native clients for OS X, Windows and Linux. They all communicate with the server through a common API.
ABS was written for a Software Design and Documentation class at RPI in the fall of 2011 by Lucas Doyle, Peter Fernandes, Kevin Todisco and Jeff Hui. Since it was written for a documentation class, the majority of the time making ABS was actually spent documenting things.
Security: ABS is lacking is in the security department. Because it was just a class project, security wasn’t one of our goals. Still, we are using HTTPS (though we feel like that alone isn’t a very good security measure) and never store or transfer passwords in plaintext. In fact, because the clients (and HTTPS technically) are stateless entities, every API request needs to be authenticated for it to do anything. This means no cookies or any artifact of your authentication other than a hashed password remains on the client.
Minimize disk space: Similar to git and other version control systems, one of the ways we could cut down on disk storage space for files is storing incremental “diffs” for changes between backup cycles.
Check out the source code on github
Written by Lucas Doyle, a robotics engineer who does a lot of web development in San Francisco.