January 2008 – August 2008

Listing all the wiki pages

Viewing the Sandbox page

Editing a page

The Need

Over the years, I have used various solutions for reference systems. I tried wikis, online web services such as Backpack, and plain-text approaches, but nothing worked quite right. I needed something as flexible as a wiki that I could access from any computer, and that I could edit offline on my laptop.

A Distributed Wiki

Nothing fit my needs, so I created Satellite, a distributed wiki with automatic online/offline synchronization between one or many clients. Satellite supports all the regular wiki features as well as textile markup, easy inter-page linking, and hotkeys for common actions.

Needing something more light-weight than pre-existing web frameworks, I created a custom view-controller framework that interacts with raw Mongrel web server requests. Instead of a relational database, I leveraged the Git distributed content tracking system as a data store.

Satellite is open-source, is no longer actively maintained. I’ve switched to a modified version of GitHub’s Gollum.

Key Technologies

  • HTML
  • CSS
  • Ruby
  • Javascript
  • Git (as both SCM and data store)
  • Mongrel
  • Linux


Satellite on GitHub
Download Satellite source code