LOLastfm is a very extensible last.fm scrobbler, it’s written in Ruby and supports a virtually infinite list of players.

You can easily inspect and change songs before they are scrobbled and you can implement commands and whatnot.

You can talk with LOLastfm through a UNIX socket and thus execute commands.

You can implement commands directly in the configuration file or you can import already existing commands, for instance you can retrieve lyrics for the current playing or any song by including the glyr set of commands.

This is particularly useful to implement scripts and whatnot that are related to song listening.


herpes is a scriptable event handling program, you can basically execute a Ruby block every certain amount of time or after a certain amount of time.

It also supports various modules for generating events and for handling those events.

For example you can easily setup a script to check RSS feeds and send the updates through email.


arpoon is an ARP event handling library, it fires events when the various types of ARP packets are seen by the given interfaces.

With that you can easily implement ARP spoofing alerting or check when someone connects to your network.


tortard is a simple SOCKS proxy bridging program configurable in Ruby.

It was originally made to map Tor hidden services to local ports to connect through irssi.

It supports internal and external SSL, this means that it can use SSL when connecting to the specified host:port pair and it can also require SSL for you to connect to the local port.

It can be used with any SOCKS supporting server and be used to map any host:port pair to a local port.


Smart Referer

Smart Referer is a simple restartless addon that adds some privacy with referers.

It sends the referer only when staying on the same domain, thus keeping websites functional and privacy while going outside intact.

You can configure it to be a bit lax about subdomains and it supports whitelisting.


Blender is a simple restartless addon that makes websites think you’re using the most common Firefox version, operating system and other stuff.

It’s made to try counter browser fingerprinting.



torchat is a plugin to use talk with TorChat and jTorchat users by using torchatd provided by ruby-torchat.


omegle is a plugin to talk on omegle.com.



clj is a json-like gem to handle clojure s-expressions, it can parse all the supported clojure literals and can easily generate clojure s-expressions from native Ruby objects.


It contains a simple thread pool implementation written properly, it supports interrupting tasks after they’ve been queued and some other stuff.

It contains a message passing implementation that can be used like Erlang receive/send.

It contains a recursive mutex.


mbox is a library to parse mailboxes in the mbox format, it provides a daemon that can check various stuff about mboxes.


ffi-inline is a gem that lets you easily inline C and C++ and makes it fairly easy to support other languages that can create shared objects.

It uses ffi to then bind the shared object and make it usable from Ruby.

It makes it very easy to wrap C++ APIs instead of using SWIG or a handwritten C-ext.


tesseract-ocr is a very nice OCR library formerly from HP and now maintained by Google.

The gem is merely a wrapper to the advanced API which it supports completely in a Ruby-esque way.


glyr is a very nice metadata fetching library for various music related stuff.

The gem is a wrapper and rubyification of the C API.


sensors is a simple wrapper and rubyfication of libsensors.


call-me is a gem consisting of various method call related additions, it supports memoization, named parameters, simple stupid pattern matching and method overloading.


refining is a gem that makes it easy to refine methods instead of going the alias-and-define way that ends up causing issues.


refr makes it possible to store and change variables in the current scope, it can also be used as a StrongRef object.

Keep in mind that using Reference to a local variable will keep the scope alive, thus keeping alive all the objects referenced in that scope, so use it carefully.


retarded is a simple gem that lets you create a Retarded object by passing a block, as soon as a method is called on it the block is executed and its return value stored and it will keep proxying method calls to that return value.


versionub is a nice library to handle and compare version schemes, it’s modular and provides some already implemented version schemes.


colorb is a simple gem that provides ANSI coloring for strings, it supports 256 colors too.


Is a library that provides a fake filesystem, it’s useful for programs that want to embed a filesystem in the DATA or load them from a file, it’s mainly used in packø.


hwaddr is a MAC address abstraction that follows the ipaddr stdlib style and interface.


bitmap is a simple Ruby library to handle bitmaps also known as bit arrays.


boolean-expression is a simple gem to deal with boolean expressions.

It provides an easy API to parse a boolean expression and then validate it on an Array that contains symbols/strings that are present in the boolean expression.


moc is a simple controller library, it fully implements the moc protocol and is usable to control and check the status of the player.

It can also enter an event loop thus receiving all the events coming from the server, making it easy to implement a different interface for moc.


cmus is a simple controller library for cmus, cmus remote controlling lets you execute any cmus command.

It has a nice ruby-esque feeling and is compatible with the moc controller interface.


mpd is a controller library for MPD, it supports all the currently existing protocol commands and wraps them in an easy to use API.

It’s compatible with moc and cmus controller interface, although a lot richer.


faildns is a nice library that abstracts the DNS protocol and provides both client and server facilities.


failirc is similar in vein to faildns but it’s made for the IRC protocol, it provides a very nice (albeit relatively slow) modular server and it’s pretty easy to implement new modules.

It also provides a simple interface to handle clients.


dm-unlazy is an ugly hack to provide unlazification to DataMapper models, for when you have to fetch a huge amount of data and don’t want to incur in the lazy overhead.

It’s ugly but it works.


rtripcode is a dumb and easy *chan tripcode generator, it supports secure tripcodes too.



libconfig is a very nice configuration handling library, the deimos has a header for using the C interface and also has an easy to use D-esque wrapper.



clj is an easy to use library to handle clojure s-expressions much like the clj Ruby gem.