[Grok-dev] Skinning/themeing

Kevin Smith kevin at mcweekly.com
Thu May 17 20:33:13 EDT 2007


Martin Aspeli wrote:
> Hi guys,
>
> I know there was a debate on this a while ago, but having done some 
> thinking, and in light of the experience of writing Plone 3, I feel that:
>
>  - We ought to have a standard way of sharing UI structure.
>

It might be wise for grok to stay out of the CMS business for awhile. I 
believe there are plans in the GSOC to flesh out the administration ui a 
bit, but only for basic maintenance and configuration tasks. Such as 
delete/rename, etc. That's a good thing, IMO.

> This is analogous to main_template in Plone
>
>  - We ought to promote a standard set of viewlets
>
> Viewlets are great. They make it easy to write general components, 
> such as ratings (with annotations, which are also great) or tagging or 
> information boxes. It'd be useful if there was a semi-standardised 
> vocabulary of viewlet managers that applications could use. This would 
> mean we'd get the same name for similar elements of applications' UI, 
> making it easier for other code to plug itself into those viewlet.
>
Viewlets are awesome. I've done some work to make them easier to use and 
behave more view-like in the megrok.quarry repository.

>  - We ought *not* to write our own themeing engine.
>
> For this, I think we should embrace Deliverance. :)
>
> Plone very much wants to move in this direction, where ZPT's are used 
> to define page structure and shared elements (which are also good at), 
> and plain-HTML theme files with Deliverance rule files are the way to 
> go for the end look-and-feel (which is much more designer-friendly).
>
> Simple applications won't care. Simple applications will just 
> hard-code look-and-feel into ZPTs. Simple applications don't need 
> anything more complex or powerful for skinning/themeing. Simple 
> applications possibly even want something simpler than ZPTs.
>
> Complex applications, or those where designers are different people to 
> coders, or those that want to be extensible and skinnable, do need a 
> themeing system. Rather than inventing a new one, I think Deliverance 
> continues the Grok mantra of simplicity, elegance and innovativeness. 
> I know some people have already started looking into this marriage, 
> and I'm really keen to hear of their experiences.
Perhaps this a bit too black and white. I think there is a lot of middle 
ground here. None of my use-cases yet warrant a full-on Deliverance, yet 
they *always* require seperate admin/public skins.

> -
> To my knowledge, to make this happen, we would need:
>
>  - To nudge the Deliverance build/install/deploy story along a little 
> further. It's not too bad, it just needs an installer or an egg or a 
> buildout recipe, and some better Windows support.
>
>  - A developer-friendly way of configuring Deliverance - probably as a 
> filter using the Twisted web server and WSGI.
>
>  - Some Grokkable conventions for storing theme files and resources
>
>  - Documentation and patterns an examples :)
>
> Thoughts?
I am -1 for making Grok a CMS, and +1 for using grok to creat a 
stream-lined CMS with a standard API, though this sounds suspiciously 
like the beginning of grok.Monolith, the port of Plone to grok. ;)


Best regards,

Kevin Smith

PS: Definately look at Darryl's work, besides using Deliverance, he's 
even done a port of Plone portlets to grok.
>
> Martin
>
> _______________________________________________
> Grok-dev mailing list
> Grok-dev at zope.org
> http://mail.zope.org/mailman/listinfo/grok-dev
>


More information about the Grok-dev mailing list