Name: CSS Template System
Level: Easy / Intermediate
Possible mentor: Hern��n Morales Durand
Possible second mentor: ?
Description
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 & 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 (http://en.wikipedia.org/wiki/CSS_frameworks) to help web programmers in composing more attractive web sites in a rapid way.
Technical Details
The objective is to complete an initial CSS framework in Smalltalk (Phantasia http://www.squeaksource.com/Phantasia) 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.
The model should be independent of web framework so it could be re-used in Seaside, Aida, Iliad or other future web frameworks.
Benefits to the Student
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.
��
Benefits to the Community
The Smalltalk community working with web technologies will be tremendously favoured by having ready-made CSS objects to incorporate easily in their web applications.
Dear Smalltalkers,
We just submitted the application to this year GSoC, now let we wait
with fingers crossed for Google until next Friday to decide. I think we
have quite some chance, specially because we collected and very well
described 22 project ideas:
�� �� �� ��http://gsoc2012.esug.org/ideas
There is still a time for ideas, so if someone has still half finished
one, please finish and publish it. Also authors of ideas please check if
your idea is put correctly on above page.
Best regards
Janko and Carla
--
Carla F. Griggio, Janko Miv��ek
Smalltalk GSoC Admin Team
http://gsoc2012.esug.org