Locker - the "me" platform
JavaScript Python PHP Other
Pull request Compare This branch is 58 commits ahead, 173 commits behind LockerProject:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
Apps merge conflict again ugh Mar 7, 2012
Collections merge conflict again ugh Mar 7, 2012
Common merge conflict again ugh Mar 7, 2012
Config Update example config.json to have externalHost/externalPort Mar 2, 2012
Connectors use two dirs Mar 2, 2012
Docs add range queries to /get* endpoint Nov 9, 2011
Logs
Ops
migrations
scripts
test clean up github repos synclet, fixes #725. Also, make author name/ema… Feb 14, 2012
tests convert twitter fully to vm Mar 2, 2012
.gitignore
.gitmodules convert ssh to http for dashboard submodule Feb 2, 2012
.travis.yml
ChangeLog Finishes out MEGA on Locker. Dashboard cleanups mostly. Jan 30, 2012
LICENSE Updating to everything to reflect the BSD license Apr 7, 2011
Makefile "make clean" will remove node_modules Feb 12, 2012
README.md Travis-CI visual Dec 15, 2011
checkEnv.sh
locker Welcome back, lockerd.js Feb 26, 2012
lockerd.js allow a migration to run both phases Mar 2, 2012
package.json
setupEnv.py initial version of latitude connector: copy&paste, no history, no tes… Aug 11, 2011
sm-TODO.md Bunch of notes on places that need work, thoughts and some start on l… Jan 6, 2012

README.md

Locker - the "me" platform Build Status

This is an open source project that helps me collect all of my personal data, from wherever it is, into one place, and then lets me do really awesome stuff with it.

Background Video

STATUS: eager-developer-friendly only at this point, we're working hard to make it usable for early adopters very soon, keep an eye on @lockerproject and @jeremie for progress, and come hang out with us on freenode IRC in #lockerproject.

We also have a mailing list setup. Join and say hello!

Getting Started

The Fast Way

Lockerbox (by pib) is a straightforward way to get all the high-level dependencies installed at once. It will make a single directory called lockerbox and get everything set up inside of there.

curl https://raw.github.com/LockerProject/lockerbox/master/lockerbox.sh > lockerbox.sh
chmod 0755 lockerbox.sh
./lockerbox.sh

When that successfully completes, add lockerbox/local/bin to your path:

echo 'export PATH=$PATH:'`pwd`/lockerbox/local/bin >> ~/.profile
source ~/.profile

Then:

cd lockerbox/Locker
#check to make sure everything worked
./checkEnv.sh
node lockerd.js

now open http://localhost:8042/ in your browser!

The Detailed Way

If you encounter errors in "the fast way", or if you want to go through the process of setting everything up manually, check out the detailed set up instructions.

What are these things?

  • Connectors - A service that knows how to connect to and sync data with a place where I have data about myself, such as an account on a site or service, or in some desktop app, on my phone, or even from a device.
  • Collections - My data from the many different sources gets organized into common collections, such as places, contacts, messages, statuses, links, etc.
  • Apps - Once my data is in my locker I need apps that do useful or fun things for me, with the ability to control where my data goes and not have to give up access to my online accounts.

Once I "install" them in my locker (giving them some working space, a local port, and some config), I can browse to them where they provide their own instructions/steps (for now, it's early yet and pretty manual). To learn a bit more about the innards, I can install and run the Dev Docs app. :)

We need TONS of help and it's welcomed across the board, particularly in adding and advancing more of the connectors, just don a hard-hat and dig in, all patches welcomed, personal data FTW!

I am the platform.