[Zope-Annce] z3c.form 1.0.0 released!
srichter at cosmos.phy.tufts.edu
Thu May 24 12:01:01 EDT 2007
Roger and I are proud to announce the first release of the new form and widget
framework ``z3c.form``! After years of talking about it, months of thinking
about it and many weeks of implementation, we have finally completed it.
For the curious and impatient ...
To run the demos do the following::
$ svn co svn://svn.zope.org/repos/main/z3c.formdemo/trunk formdemo
$ cd formdemo
$ python bootstrap.py
$ ./bin/demo fg
Now you can access the demo under:
Since this takes a while to build, you can read on while waiting for the demo
to come up. :-)
Goals of z3c.form
While taking the best of the older ``zope.app.form`` and ``zope.formlib``
packages, this new framework provides much more flexibility and hooks as are
needed in daily development. For example, creating a simple form can look
almost identical to ``zope.formlib``, but integrating sub-forms is much
Another important issue for us was keeping up-to-date with today's latest Web
developments, especially AJAX-features. It is an expressed goal of this
framework to provide enough flexibility to fully support AJAX-driven forms and
A secondary goal is to provide flexibility to allow experimentation with new
ideas without interupting the entire framework. Many of the features are
implemented as components allowing simple replacement as desired.
State of the Code
We consider the code feature complete with some real-world user scenarios
implemented. The framework has not been used in a production environment yet,
but we will base all our future project on it and switch older projects to
this framework as needed.
This is the main package implementing the framework. It is 100% tested in a
multitude of text files; start by reading README.txt, which provides you with
an overview and priorities the text files for you.
Unit Tests: 478
Documentation: 193k in 24 text files
Architecture Layout: form-graph.png, widget-graph.png
This package contains some base templates for DIV- and TABLE-based form
layouts. Both layout options are implemented in different layers, allowing
you to chose either layout default by simply adding the layer to your skin.
Here you will find some small demo sub-packages that demonstrate the framework
as it is to be used:
* Hello World Message
A demo of adding, editing and displaying simple message objects. It
demonstrates the simple usage of add, edit and display forms. It also adds
another button to the edit form.
A simple form whose purpose is to demonstrate the completeness of the input
widgets. All fields except Dict and Object have an input widget as
demonstrated in the form. It also demonstrates how the content object
retrieval can be customized in a form.
A simple calculator implemented as a form. The demo shows how to write
different types of buttons, register handlers for those button types and
hook in a custom action manager.
This simple, linear wizard demonstrates the sub-form capabilities of
``z3c.form``. Since these packages do not provide an object widget, this
demostration also shows how this need can bebetter solved using sub-forms.
This little table allows you to add and edit a simple content component
within a table. The table is rendered using the ```zc.table`` package
demonstrating how the two packages can be used together.
The ``jquery`` namespace packages provide a first attempt to have AJAX-enabled
forms. It is already possible to validate widget values and do some other
form-unrelated UI goodies.
The features within the ``jquery`` and form packages will soon be demonstrated
in detail on the new www.zope.org website, which will also be available in
code form as ``z3c.website``. So stay tuned!
All packages have been released in source and binary-egg format on PyPI and
``download.zope.org/distribution``. You can use setuptools to install
them. Here is a list of all packages:
Roger and Stephan
More information about the Zope-Announce