Camlistore contributors regularly use Linux and OS X, and both are 100% supported. Developing on Windows is sometimes broken, but should work. Let us know if we broke something, or we accidentally depend on some Unix-specific build tool somewhere. See http://camlistore.org/docs/contributing for information on how to contribute to the project and submit patches. Notably, we use Gerrit for code review. Our Gerrit instance is at https://camlistore.org/r/ See architecture docs: https://camlistore.org/docs/ You can view docs for Camlistore packages with local godoc, or godoc.org. It's recommended you use git to fetch the source code, rather than hack from a Camlistore release's zip file: $ git clone https://camlistore.googlesource.com/camlistore (We use github for distribution and collaboration with some people, but the Gerrit git server & code review system is the main repo. See http://camlistore.org/docs/contributing for how to use them.) On Debian/Ubuntu, some deps to get started: $ sudo apt-get install libsqlite3-dev sqlite3 pkg-config git During development, rather than use the main binaries ("camput", "camget", "camtool", "cammount", etc) directly, we instead use a wrapper (devcam) that automatically configure the environment to use the test server & test environment. To build devcam: $ go run make.go And devcam will be in /bin/devcam. You'll probably want to symlink it into your $PATH. Alternatively, if your Camlistore root is checked out at $GOPATH/src/camlistore.org (optional, but natural for Go users), you can just: $ go install ./dev/devcam The subcommands of devcam start the server or run camput/camget/etc: $ devcam server # main server $ devcam appengine # App Engine version of the server $ devcam put # camput $ devcam get # camget Some old wrapper scripts haven't been converted yet to be part of devcam. For now, they're at: $ ./dev-camtool $ ./dev-cammount ... etc. Once the dev server is running, - Upload a file: devcam put file ~/camlistore/COPYING - Create a permanode: devcam put permanode - Use the UI: http://localhost:3179/ui/ Please update this file as appropriate.