+++ to secure your transactions use the Bitcoin Mixer Service +++

 

FAQ - General

Return to FAQ index

1   What is Zope 3?

Zope 3 is a production ready free/open source web application framework written in the Python programming language. Zope 3 provides a component architecture, transactional object database, tightly integrated security model and many other features.

Zope 3 is coming from the Zope community which is started around 1998. Initially Zope's core technologies were designed by Zope Corporation. The development of Zope 3 started in late 2001. In November 2004, Zope 3 was released. Zope 3 is a complete rewrite that only preserves the original ZODB object database. The design of Zope 3 is driven by the needs of large companies. It is directly intended for enterprise web application development using the newest development paradigms. Extreme programming development process has a real influence in Zope 3 development. Automated testing is a major strength of Zope 3. Sprints were introduced to help accelerate Zope 3 development. In 2006 Zope foundation was formed to help organize and formalize the relationships with the Zope community.

2   Why Zope 3?

Ref: http://mail.zope.org/pipermail/zope3-users/2006-August/004205.html

Zope 3 has:

  • WSGI-compatible object publisher (zope.publisher)
  • WSGI-enabled web server (zope.server) and twisted.web2 for server backend
  • Object database (ZODB) for transparently persisting objects; comes with load-balancing support (ZEO).
  • Component Architecture for making things pluggable very easily (zope.component)
  • XML-configuration language for registering components (zope.configuration), not mandatory but pretty much standard
  • Flexible security architecture with pluggable security policies (zope.security)
  • Good unit, integration and functional testing frameworks (zope.testing, zope.testbrowser)
  • XHTML-compliant templating language (zope.pagetemplate)
  • Schema engine and automatic form generation machinery (zope.formlib)
  • many more core and third-party packages that may already solve some of your problems. See http://svn.zope.org, for instance.

Zope 3 is:

  • ZPL (BSD-ish license)
  • soon to be owned by Zope Foundation
  • written mostly by contributors, not just Zope Corporation.
  • usable in pieces or in whole

3   What is the Zope Foundation?

From http://foundation.zope.org:

The Zope Foundation has the goal to promote, maintain, and develop the Zope platform. It does this by supporting the Zope community. Our community includes the open source community of contributors to the Zope software, contributors to the documentation and web infrastructure, as well as the community of businesses and organizations that use Zope.

The Zope Foundation is the copyright holder of the Zope software and many extensions and associated software. The Zope Foundation also manages the zope.org website, and manages the infrastructure for open source collaboration.

For more details: http://foundation.zope.org/about.html

4   How can I help?

If you're interested in helping and you have time, educate yourself on the component architecture and Zope 3 then volunteer to assist in your particular area of expertise. See HowToContribute for details.

5   What is the license of Zope 3?

Zope 3 is licensed under Zope Public License, Version 2.1 (ZPL).

Since we also use some contributions from other projects, some parts of Zope 3 will have other licenses. See LICENSES.txt for more details.

6   Is Zope 3 stable enough to be used in production environment?

Zope 3 is used in several larger production sites already. Public applications include Launchpad, SchoolTool, Tiks and SIP. Several custom solutions have been written too. But the development of Zope 3 will probably never be done, it will continue until all our needs are met :)

7   Which Python version is required?

Zope 3.4 can be run using Python 2.4 or 2.5.

8   What is the KGS (Known Good Set)?

Starting from version 3.4, Zope has been split into many packages called "eggs", that are released independently. The KGS is a set of python eggs, that are known to work together, and that are listed in a separate Python Package Index (to be used with setuptools/easy_install and zc.buildout).

The KGS is used to define what a major release of Zope is. The KGS for Zope 3.4 is here: http://svn.zope.org/zope.release/tags/

The generic code that is used to build and maintain any KGS is here: http://svn.zope.org/zope.kgs/

9   How do I start a new Zope3 project?

You currently have a choice between:

zopeproject will automatically create a buildout for you, and you will be able to start your new zope application in a few seconds. The buildout does not contain every zope component by default, you will want to modify the setup.py to add the eggs that will be eventually used by your application.

zopeproject 0.4.1 will use all the latest eggs by default, so that the setup may fail. You should instead use the KGS of zope 3.4, by replacing:

find-links = http://download.zope.org/distribution/

with:

extends = http://download.zope.org/zope3.4/versions.cfg
versions = versions



( 99 subscribers )