Zope Application Server

Zope is an Open Source web Application Server that is a little bit like Domino. It is written in Python Language, with performance-critical parts in Cee Language.

As of 2014 there has been no release in 4 years, and the web site says: zope2.zope.org

Zope is a legacy framework, which is kept alive to support existing applications built on top of it. It is no longer recommended to start new projects based on it, unless you are intimately familiar with the technology stack.

The "Six reasons for using Zope" page actually recommends against using it.


Find Zope at www.zope.org and the old version at old.zope.org

Most of the references below altered to old.zope.

From Learning Python, p. 314:

Zope: A framework for publishing Python object hierarchies on the Web. With Zope, it's easy to set up a powerful interface to a database of web-based applications, by providing support for templates, interfaces to database engines, etc. If you're thinking about developing sophisticated web applications (as opposed to simple forms processing [...]), you should seriously investigate these tools.

old.zope.org

"The Zope Book"'' can be found on-line at

Various Versions:

Specific Versions:

Zope and Wiki form a perfect couple!

See Zwi Ki. They are both extremely collaborative creatures that capture the true spirit of the Web.

Scope / area of application:

Zope provides a nice way to handle code templating, distributed page authoring, dynamic content and access control.

It doesn't really help you design pages as such.

Co-authoring is an integral part of Zope, making it a good choice for content management systems.

Plo Ne is the star Open Source CMS based on Zope.

Zwi Ki can also be added either with or without Plo Ne.

Collaborative Portal Server (CPS) is another product built on Zope Application Server.

Performance / Scalability:

The basic Zope uses one machine and one filestore, so it has scale limits.

You can move content into a separate RDBMS, to extend the scale somewhat.

There is an add-on called ZEO which is the fully scalable version. In a recent announcement (Spring 2000) the authors of ZEO have announced that it is being released as Open Source after a short testing program.

What Happened since 2000 to ZEO?

Ease of learning:

You can do some neat things with it very easily, but there is a lot of functionality, and so it takes a lot of time to become proficient.

The documentation is spotty--there is a fair bit of it, but it is spread out and not always well-organized. Digital Creations has published the Zope Book online to help remedy this;

Although you can do a lot with the built-in DTML language and with add-on Products (as they are called), to take full advantage of Zope you really need to have some knowledge of Python Language.

Add-on products include Zwi Ki to create wiki webs, World Pilot (a scheduler/calendar client), the Portal toolkit, a Slashdot-like product called Squishdot, and ZDiscussions to create threaded discussions. There are active mailing lists, including one dedicated to using Zope with ecommerce. -- Richard Moon

Documentation for Zope has improved a lot, with major doc projects linked from old.zope.org . You'll still need to know how to trawl the net for clues, and work with/deal with the community. If you want to stay current and keep an eye on where Zope is going, follow the Fishbowl and mailing lists. -Karl Anderson

Comparison to competitors (e.g. Web Objects, Allaire Cold Fusion, Active Server Pages, PHP)

Zope is Object Oriented; Allaire Cold Fusion, ASP, and PHP are not. (PHP may have objects, but it does not meet the definition of object-oriented.)

Zope is Open Source, Web Objects, ASP and Allaire Cold Fusion are not.

Everything is editable through the web.

Zope has a complete security and collaboration system.

Zope is a complete package including a built-in search engine, object database, and editing facility.

Zope runs on Linux, most flavors of Unix, and Microsoft Windows.

Zope's foundation, Python Language, is also Open Source.

Zope is modular, PHP is Perl thing

Zope used to have Gnow Sys which now uses Django Project instead.

???

XP Unit Testing:



I'm curious if anyone who uses Zope also uses User Land's Frontier, and would be interested in commenting on how well they compare. Obviously if you're a Python fan (I am), you might lean towards Zope. I'm less interested obvious differences like that and want more end-user experiences with both. -- John Passaniti

Yes, at least one person uses both: the author of Zope Fish <zopefish.weblogs.com >.


From what I read about it, in addition to inheritance, Zope provides an inheritance-like abstraction mechanism called Acquisition Inheritance.

That's correct. Simply put - an object (eg a web page) in a folder has access to all the objects in that folder plus those in the folders above it (subject to security restrictions). Typically web pages in zope will use this to pull in standard headers and footers, logos or database access methods. You can also access the attributes of other objects and apply logic depending on the result. -- Richard Moon

For the all-new Zope 3, implicit acquisition is pretty much going away in favour of explicit, largely because of the difficult-to-manage complexity that arises from ubiquitous acquisition. See dev.zope.org for the high-level view.


After a while, I started to get some clarity about acquisition: udell.roninhouse.com -- Jon Udell


Zope has won Jolt Productivity Award in the Language and Development Environments field on April 11, 2001.

I am confused. Do we need Zope if we have Python Language based Moin Moin? Or is Zope used for tasks unsuited for a Wiki Server (such as ....) ?


Saw a nice demonstration of Zope (at the Saint Louis Unix User's Group). Strikes me as "an industrial strength wiki." Its operation is remarkably wiki-like, in that you can browse/add/change/delete content through the browser interface, and that your tools to build the Web site are simple (like a wiki) but robust.

You can build very nice (and very real) professional Web sites with it. -- Jeff Grigg


What Happened to Zope Application Server? Is it being updated in sync with Python Language changes?

Sure, though Zope tends to use slighly older Python versions due to the need for security audits. As of 2007: both Zope 2 and Zope 3 are actively developed, with Zope 3 gradually becoming "the zope libraries" and Zope 2 becoming "the Zope application server, based on the zope libraries". See also Plo Ne.


At parlevink.cs.utwente.nl , ( Broken Link 20070511 ) it was said Zope can be used as a server to implement Rest Architectural Style Web Services. Any recent (mid 2003+) references to this alternative? -- dl


See original on c2.com