[Grok-dev] libraries to use with Grok

Martijn Faassen faassen at startifact.com
Tue Nov 17 02:07:36 EST 2009

Hi there,

Steve Schmechel made the suggestion that we should have a clear page in 
our documentation that lists libraries that are useful to use with Grok. 
Preferably we document how they are used with Grok, but just a link to 
the library and its documentation would be useful already to newcomers.

It also helps us to create a good list of candidates of libraries that 
we may want to include in Grok itself eventually.

So, I'll kick off with a listsof libraries that I use. Off the top of my 
head. Many of them I've created myself or helped create, so it's a bit 
self-serving perhaps. :)

hurry.resource, hurry.zoperesource

Automatic declarative inclusion of Javascript and CSS resources into web 

hurry.yui, hurry.jquery, hurry.tinymce

Packaged Javascript libraries for hurry.resource


Integrates SQLAlchemy with the Zope component architecture. Builds on 
zope.sqlalchemy for transaction integration.


A way to create SQLAlchemy-based applications with Grok. Builds on 

traject, megrok.traject

Routing for Grok (as opposed to traversal)

z3c.relationfield and z3c.relationfieldui

Schema fields that are indexed in a relation catalog (using zc.relation)


Convert schema-defined objects to XML and back again.


For all my XML processing needs.


Generate tables. I don't use this much anymore, as I've moved to more 
javascript-driven tables (such as YUI's datatable), but used it a lot in 
the past. (note that it depends on zc.resourcelibrary which conflicts 
with hurry.resource, you can trick your away around it..)

xlrd, xlwd

Read and write Excel spreadsheets.


A workflow system


A file upload widget that allows the form to be reloaded if there are 
validation errors and the file is still there.


An easier way to compose catalog queries.


Store a File object using the ZODB blob storage.

Then there are of course many of the libraries in the ZTK, that are 
directly included by Grok. We should make a list of those ZTK apis we 
find ourselves using in our application (to pull into Grok or just 
document), but that's a separate project.



More information about the Grok-dev mailing list