Home - StoneyJackson/quilt GitHub Wiki
Welcome to Quilt!
This project is currently in its inception. This wiki serves as a discussion forum for Quilt contributors.
1. License
Quilt is licensed under EPL 1.0.
2. Overview
Quilt allows web developers to stich together content from different sources into a pattern. A pattern is implemented in HTML and CSS and provides the basic layout for the final document. A Quilt document describes how to fetch content from different sources and how to inject it into the pattern.
2.1 What Quilt isn't
Quilt is not a traditional web-application framework. It is more lightweight. It does not impose a particular programming language for your web-application. It does not impose a particular design pattern.
Nor is Quilt a typical templating engine. It uses CCS3-style selectors to specify where to insert content into a layout. The layout and content can come from other sources on the web.
2.2 What Quilt is
Quilt allows developers to further decuple their layouts from their content. This was the promise of CSS, but developers frequently still need to add div elements to their content to provide hooks for CSS styling. These divs usually have nothing to do with the structure of their content. They are their to help describe the layout of the page. With HTML5, developers now have header, footer, nav, aside, and article to mark up the structure of their layout. But it is still the layout, and not content.
"Who cares if my layout is mixed in with my content?"
Changing the layout for your site becomes more complicated if it is mixed up with your content. For example, let's say your site's layout is currently implemented using div elements. Now you want to use the new HTML5 elements. Unless you are using a web-application framework that provides templating, or some custom built CGI-based framework, or a separate templating mechanism (like Quilt!), you'll be in the unenviable possition of trying to make a consistent change accross a large set of files.
2.3 Related Technologies
- Deliverance: http://packages.python.org/Deliverance/
- Psttt!: http://codeassembly.com/Psttt!-I-am-a-different-php-templating-system/
- CSS layouts module: http://www.w3.org/TR/2009/WD-css3-layout-20090402/
- Mozzila Merge on Browse (MOB): http://sdpml.mozdev.org/
- HTML frames and iframe
- Frameworks like Ruby on Rails (http://rubyonrails.org/) and Yii (http://www.yiiframework.com/)
- CGI languages such as Perl (http://www.perl.org/), PHP (http://www.php.net/), and Python (http://python.org/)
- Templating engines such as Smarty (http://www.smarty.net/ ): http://en.wikipedia.org/wiki/Template_engine_(web)
3. Documentation
4. Communication
Meeting minutes/agendas/reports
5. Notes to would-be Wiki editors
- When creating a link to another wiki page from this one, you need to prefix the page with
wiki/
. (View the source code for this page.) - On other pages, just refer to the other page without the
wiki/
prefix. (View the source code of some other page.)