Jekyll Plugins on GitHub
Easy Admin Interfaces with Active Admin in Rails
Ruby Command Line Interface Gems
Ruby & OpenCalais: Semantically Tag Anything
A Simple Admin for Padrino
Padrino is an excellent website framework that makes it easy to implement complex web applications in a lightweight environment. Although it's built on Sinatra, Padrino uses a Rails-like approach when generating code, establishing an organized file structure, and implementing database functionality.
This article briefly introduces the Padrino framework and how it can be used to create a simple admin interface within a Sinatra-like environment.
A Brief Introduction to Sinatra
In a nutshell, Sinatra is a DSL (Domain-Specific Language) that processes HTTP connections. Specifically, Sinatra compares incoming user requests with entries in a list. When the first match is found, Sinatra executes the associated code and sends the results back to the user.
For example, consider an HTTP
GET request arriving on this URL:
The DSL code within your Sinatra implementation may look like this:[ruby] get 'product/laces' do haml :show_laces end get 'product/shoehorn' do haml :shoehorn end put 'order/shoppingcart' do haml :cart end [/ruby]
In the above code, the words
put may look like Ruby commands, but in reality, they're part of a filter that looks for HTTP verbs like
Looking at XMPP and the XMPP4R Gem
XMPP is "an open, XML-inspired protocol for near-real-time, extensible instant messaging and presence information." --- Wikipedia
The Extensible Messaging and Presence Protocol (XMPP) is an open technology for real-time communication, which powers a wide range of applications including instant messaging, presence, multi-party chat, voice and video calls, collaboration, lightweight middleware, content syndication, and generalized routing of XML data. --- xmpp.org
The eXtensible Messaging and Presence Protocol aka as Jabber (the protocol was originally named Jabber and was developed by the Jabber open-source community) is a protocol to exchange messages between 2 entities. Those messages are transmitted over the wire in the XML format. It's used by Jabber, Google Talk, Google Wave, Pidgin, Kopete, and all sorts of open source instant messaging applications.