# New Rails plugin 'Liftoff' is available

**URL:** <https://www.ruby-forum.com/t/new-rails-plugin-liftoff-is-available/117315>\
**Category:** Ruby\
**Created:** [October 15, 2007, 10:33pm UTC](https://www.ruby-forum.com/t/new-rails-plugin-liftoff-is-available/117315 "2007-10-15T22:33:57Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![nbits](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/n/8c91f0/32.png) [@nbits](https://www.ruby-forum.com/u/nbits)\
**Post date:** [October 15, 2007, 10:33pm UTC](https://www.ruby-forum.com/t/new-rails-plugin-liftoff-is-available/117315/1 "2007-10-15T22:33:57Z")

</div>

[http://liftoff.rubyforge.org](http://liftoff.rubyforge.org)

Summary

Liftoff is a simple Rails plugin that gets your application  
off the ground by generating an initial set of model files from  
a single text file in which you specify only the names of the models  
and the types of the associations that pertain to them using an  
extremely simple DSL called “CAL”. CAL stands for  
“Compact Association Language” and looks like this (of course,  
comments are optional).

#############################################################################

# CAL File for web store.

# 

#############################################################################

# A customer places one or more orders.

# An order may request more than one product, which may be requested

by

# multiple orders.

# A line item references a single product.

customer \< order \<\> product \<= line\_item # A line\_item must specify  
#  
a  
quantity for the product.

# For every order, exactly one invoice shall be generated.

# An invoice may contain multiple line items.

order =\> invoice \< line\_item

# A category describes many products and a product may be described by

# multiple categories.

```
category <> product

```

#############################################################################
