The Zope Web Framework
Project description
BlueBream
Introduction
BlueBream is a web framework written in Python programming language. BlueBream is a free/open source software, owned by the Zope Foundation, licensed under the Zope Public License (BSD like, GPL compatible license). BlueBream was previously known as Zope 3.
Features
A few of the features which distinguish BlueBream among Python web frameworks.
BlueBream is built on top of the Zope Tool Kit (ZTK), a distillation of decades of experience in meeting demanding requirements for stable, scalable software.
BlueBream leverages the power of Buildout a build system written in Python.
BlueBream uses the ZODB transactional object database, providing extremely powerful and easy to use persistence.
BlueBream uses ZCML, an XML based configuration language for registering components, providing limitless flexibility. If you don’t need the power of ZCML and the complexity it adds, try Grok, which adds a layer replacing the declarative configuration of ZCML with conventions and declarations in standard Python.
BlueBream features the Zope Component Architecture (ZCA) which implements Separation of concerns to create highly cohesive reusable components (zope.component).
BlueBream supports WSGI using Paste, PasteScript, and PasteDeploy.
BlueBream includes a number of compenents which provide well tested implementation of common requirements. A few are of these are:
zope.publisher publishes Python objects on the web, it is geared towards WSGI compatibility
zope.security provides a generic mechanism supporting pluggable security policies
zope.testing and zope.testbrowser offer unit and functional testing frameworks
zope.pagetemplate is an XHTML-compliant templating language
zope.schema and zope.formlib provide a schema engine and automatic form generation machinery
Installation
If you have installed setuptools or distribute an easy_install command will be available. Then, you can install BlueBream using easy_install command like this:
$ easy_install bluebream
Internet access to PyPI is required to perform installation of BlueBream.
Once BlueBream is installed, run paster command to create the project directory. The create sub-command provided by paster will show a wizard to create the project directory.
$ paster create -t bluebream
You need to provide the project name and namespace package name. The project name will be used as the egg name.
The project name can be give given as a command line argument:
$ paster create -t bluebream sampleproject
The name of namespace package also can be given from the command line:
$ paster create -t bluebream sampleproject namespace_package=mycompany
The other variables which can be given from command line are:
interpreter – Name of custom Python interpreter
version: Version (like 0.1)
description: One-line description of the package
long_description: Multi-line description (in reST)
keywords: Space-separated keywords/tags
author: Author name
author_email: Author email
url: URL of homepage
license_name: License name
zip_safe: True, if the package can be distributed as a .zip file othewise False.
If you are in a hurry, you can simply press Enter/Return key and change the values later. But it would be a good idea, if you provide good name for your project.
Usage
The generated package is bundled with Buildout configuration and the Buildout bootstrap script (bootstrap.py). First you need to bootstrap the buildout itself:
$ cd sampleproject $ python2.6 bootstrap.py
The bootstrap script will install zc.buildout and setuptools package. Also, it will create the basic directory structure. Next step is building the application. To build the application, run the buildout:
$ ./bin/buidout
The buildout script will download all dependencies and setup the environment to run your application.
To run test cases:
$ ./bin/test
To get the debug shell:
$ ./bin/paster shell debug.ini
To run the server:
$ ./bin/paster serve debug.ini
Now you can access the main page from: http://localhost:8080
You can continue reading about BlueBream from the documentation site.
Resources
The source code is managed at Zope reposistory. You can checkout the trunk code like this (Anonymous access):
svn co svn://svn.zope.org/repos/main/bluebream/trunk bluebream
You can also become a contributor after signing a contributor agreement
The bugs and issues are tracked at launchpad.
IRC Channel: #bluebream at irc.freenode.net
Changelog
1.0a1 (2010-02-06)
Use released package distribution versions: http://download.zope.org/bluebream/bluebream-1.0a1.cfg
Include new packages to site.zcml template:
zope.app.publisher.xmlrpc (meta.zcml)
zope.copypastemove
zope.app.pagetemplate
Changed template summary into: A BlueBream project
Removed Sphinx-PyPI-upload – no more used as the website is moved to http://bluebream.zope.org
Added zope.traversing.browser from site.zcml in the project template. Ref: http://bit.ly/80xltO
0.1.9 (2010-01-13)
LP #506879: debug shell added. Basic usage:
./bin/paster shell debug.ini
0.1.8 (2010-01-12)
Use zope ZCML namespace as default in configure.zcml
Documentation improvements
Create a sample application by default
0.1.7 (2010-01-10)
Update version: zope.tales = 3.5.0
LP #505362: Fix. Main package name is hard-coded as ‘main’
Change ‘defaultView’ registration location and interface
LP #505413: Name of default custom Python interpreter should be able to customize
0.1.6 (2010-01-07)
LP #502819: Main page after a fresh installation
Removed hello view from template.
LP #502941: Add trove classifiers.
Mention all resources in PyPI page.
0.1.5 (2010-01-07)
LP #503388: Value of “namespace_package” should not be empty string.
Updated description, added promotional video.
0.1.4 (2010-01-04)
LP #503301: Work around fix for “empty directory” problem.
Change author as “BlueBream” team and email to zope-dev list.
0.1.3 (2010-01-04)
LP #502817: var directory and its subdirectories not exist
Documentation improvements: added “Usage” section
0.1.2 (2010-01-03)
Added functional testing support for project
Sphinx based documentation infrastruture improvements
LP #502529: Update wizard to ask all package meta to be updated in setup.py
0.1.1 (2010-01-02)
Fix missing package data. The 0.1.0 releases was broken.
Improve documentation.
0.1.0 (2010-01-02)
Initial release.
Download
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.