Name: CSS Template System<br>Level: Easy / Intermediate<br>Possible mentor: Hernán Morales Durand<br>Possible second mentor: ?<br><br>Description<br><br>Cascading Style Sheets (CSS) is a technology which allows personalized presentation styles of document contents. It is based in textual source code which has influence on the visual style and presentation of HTML and XML documents. This includes ways of assigning layout and style properties, such as font types and sizes, for different types of document components when they are presented. As having a long adoption rate from specification (CSS 1 : 1996, CSS 2 : 1998) to be fully supported by web browsers (2000 &amp; 2006 for CSS2) it is predictable that CSS 3 modules like Backgrounds and Colors, Media Queries, and Multi-column Layout will come in no short time from now (2012), although many web sites today use CSS heavily. Through the years, the need for high-level presentation objects like grids and common layouts, leaded to the creation of CSS libraries called frameworks (<a href="http://en.wikipedia.org/wiki/CSS_frameworks">http://en.wikipedia.org/wiki/CSS_frameworks</a>) to help web programmers in composing more attractive web sites in a rapid way.<br>
<br>Technical Details<br><br>The objective is to complete an initial CSS framework in Smalltalk (Phantasia <a href="http://www.squeaksource.com/Phantasia">http://www.squeaksource.com/Phantasia</a>) with CSS Template objects. Phantasia avoids to learn CSS syntax, and with proper completion could obtain a rich object model of CSS objects beyond the specification limits, suitable to edition through Smalltalk code. High-level template objects could include navigational ones like lists, menus, or palettes, useful in wizards. Presentational objects like template layouts, which are already implemented by external CSS libraries like Blueprint, and scale to whole CSS templates including reports, galleries, etc.<br>
<br>The model should be independent of web framework so it could be re-used in Seaside, Aida, Iliad or other future web frameworks.<br><br>Benefits to the Student<br><br>The student will learn how to build and extend a model for a limited textual technology (CSS), from the low level objects like CSS functions to high level objects like Positioners. The student could apply the results of his work to several popular Smalltalk web frameworks.<br>
 <br>Benefits to the Community<br><br>The Smalltalk community working with web technologies will be tremendously favoured by having ready-made CSS objects to incorporate easily in their web applications.<br><br><br><div class="gmail_quote">
2012/3/9 Janko Mivšek <span dir="ltr">&lt;<a href="mailto:janko.mivsek@eranova.si">janko.mivsek@eranova.si</a>&gt;</span><br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Dear Smalltalkers,<br>
<br>
We just submitted the application to this year GSoC, now let we wait<br>
with fingers crossed for Google until next Friday to decide. I think we<br>
have quite some chance, specially because we collected and very well<br>
described 22 project ideas:<br>
<br>
        <a href="http://gsoc2012.esug.org/ideas" target="_blank">http://gsoc2012.esug.org/ideas</a><br>
<br>
There is still a time for ideas, so if someone has still half finished<br>
one, please finish and publish it. Also authors of ideas please check if<br>
your idea is put correctly on above page.<br>
<br>
Best regards<br>
Janko and Carla<br>
<span class="HOEnZb"><font color="#888888"><br>
--<br>
Carla F. Griggio, Janko Mivšek<br>
Smalltalk GSoC Admin Team<br>
<a href="http://gsoc2012.esug.org" target="_blank">http://gsoc2012.esug.org</a><br>
<br>
</font></span></blockquote></div>