Vintage 0.0.5 - The super slim web framework for templating

Hello all,
I’d like to announce the next release of Vintage. It has a few
bugfixes and feature additions.

The next steps after this release are to add session management,
multipart parsing, and tests/specs for all of it (I’ve been a bad TDD
developer! Bad bad!)

So what is Vintage? Vintage is a very small web framework based on
the original idea of Merb: Mongrel serving up ERb (Embedded Ruby)
templates. The idea has been expanded and now Vintage helps you serve
up ERb, HAML, Textile, Markdown, and Markaby templates.

Basic Usage

To use Vintage, you have two options. You can use it in standard mode
or application mode. In standard mode, there is no configuration and
Vintage will serve up templates and static files from the current
folder. To get this mode, then simply type vintage start in any

$ vintage start

  • vintage version 0.0.1
    starting server on port 5000

Now navigating to a URL will look in the current folder for the file
or template. For example, going to
http://localhost:5000/my_template will look for my_template.erb
(or whatever template engine you are using) in the current folder and
render it if available. If a static file is requested, then it is
served up. If you request
http://localhost:5000/my_folder/my_template, then the application
will look in my_folder for the my_template template.

Vintage as an application server

Vintage can also be configured to be used as an application server.
To do so, you can either generate an application or hand create a
configuration.yml file (see one from a generated project for
an example). To generate an application, simple run vintage with a
project name as the argument.

vintage my_project

This command will generate a number of files. Chief among these is
configuration.yml which tells Vintage how you’d like to run it.
Other files include a sample template and the proper folder structure
for the generated configuration to work properly. This setup allows
you to more easily segment your code for easier maintenance.


Vintage comes with a few helpers that live in Vintage::Helpers. You
can add your own helpers by creating a helpers folder and stashing
modules in there. As of right now, helpers must live in the
Vintage::Helpers module, but this will hopefully be changing very

Thanks, and please help me out by filing tickets for bugs or
enhancements at!


My books:
Ruby in Practice

My free Ruby e-book

My blogs: