Skip to content


Subversion checkout URL

You can clone with
Download ZIP
(Experimental and outdated.) A blog, powered by Sinatra ( An experiment.
Fetching latest commit...
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.


"I did it my way." - Sinatra, and many others.

= sss(e)
Simple, Stylish, Sinatra (Experimental)

This is a blog powered by Sinatra, not the singer, but the web framework
( It is small – very small – based on the REST principles
(yay for RESTfulness!), easy, and – most importantly – fun! OK, maybe it's not
fun. Maybe it will be. Or maybe not. We'll see. Maybe.

sss(e) is also an experiment. Consequence: it doesn't work. Well, to be
completely honest, it may actually work. But it may also refuse to even _start_
working for you. It's not your slave, you can't command it to do anything. Free
will and all that. So, it's not for the easily frustrated. Try it out on a free
Sunday afternoon – at least, if that's the kind of thing you're into on a Sunday

== How does it work?
I currently don't have much time to make detailed descriptions of blogging
engines I haven't even written yet, but this may interest you:

* sss(e) uses Sinatra (
* It uses Sequel to connect to a database
* At this moment, you *have* to use SQLite, your database will be in the file
  blog.db. You can create the database running "ruby create_db.rb" in the
  command line.
* There's some preliminary configuration in config.yml.
* We also use JSON a lot, most REST actions can respond in both HTML and JSON.

== Installing
SQLite is needed, along with libsqlite. On Ubuntu try running
  $ sudo apt-get install libsqlite3-ruby

Sinatra and Sequel are packaged with sss(e). When using the Git version, however
you need to load them first, as Git submodules, using the following command:
  $ git submodule init && git submodule update

You may also need to install the metaid, json, mongrel and haml gems, run:
  $ gem install metaid json sqlite mongrel haml

Afterwards, run
  $ ruby init.rb
to start sss(e). Any errors will be reported.

If you have trouble installing, and then find out how to fix your problems,
consider changing this README to reflect the changes. Thank you!

== Other cool things
* Camping (
  A small web framework by _why, that makes it easy to create little apps, like
  a blog.
* Reststop (
  A library on top of Camping, that makes it easy to write RESTful applications
  in Camping. For a blog implemented in Reststop, see
* Wink (
  A minimalist blogging engine written in Ruby using Rack, Sinatra, and
  DataMapper, by Ryan Tomayko. (Currently marked as unmaintained.)
* Sinatra Starter Kit (
  A starting point for Sinatra apps. Might have to steal some ideas there.
* Scanty (
  A small blogging engine written in Ruby using Sinatra and Sequel.
Something went wrong with that request. Please try again.