Derby is a Fedora Repository implementation in Ruby. It uses RDF::LDP and Sinatra to provide a drop-in Linked Data Platform server tracking work to standardize the Fedora API. The software resulted from a discussion at the Hydra Developers Congress meeting at UC San Diego.

If you have rubygems, you can install and run Derby with just a couple of commands:

$ gem install derby
$ derby-ldp

Why?

Derby was started with a handful of goals in mind:

  1. Provides a fast moving testing ground for work on a Fedora API specification;
  2. Serves as a drop-in replacement for the Fedora reference implementation for testing client software;
  3. Stores repository object metadata directly in a swappable quadstore backend.

Status

For now, Derby is a minimal LDP server. As the Fedora API discussion continues, I’ll try to keep up by implementing services and data constraints as they emerge. Storage is currently in-memory by default, and I encourage you to treat the server as a useful toy. I will post additional notes as work progresses.

Derby is licensed under Apache 2.0 and is part of Fedora Commons Labs.