ZTFY web application template
Project description
ZTFY.webapp
Introduction
ZTFY.webapp is mainly based on BlueBream concepts and packages, but introduces a few changes and a set of new functionalities ; it’s main goal is to provide a Paster template to create a new ZTFY.blog based web site in just a few seconds.
More informations about ZTFY packages can be found on ZTFY home page.
The “webapp” is nothing more than a “configuration container”, which references and configures all packages needed to handle a web site ; it doesn’t provide any real functionality in itself, except those required to handle the web server in itself.
BlueBream – formerly known as Zope 3 – is a web framework written in the Python programming language.
BlueBream is free/open source software, owned by the Zope Foundation, licensed under the Zope Public License (BSD like, GPL compatible license).
Features
Here are the features distinguishing BlueBream from other Python web frameworks:
BlueBream is built on top of the Zope Toolkit (ZTK), which has many years of experience proving it meets the demanding requirements for stable, scalable software.
BlueBream uses the powerful and familiar Buildout building system written in Python.
BlueBream employs the Zope Object Database ZODB, a transactional object database, providing extremely powerful and easy to use persistence.
BlueBream registers components with Zope Component Markup Language (ZCML), an XML based configuration language, providing limitless flexibility.
BlueBream features the Zope Component Architecture (ZCA) which implements Separation of concerns to create highly cohesive reusable components (zope.component).
BlueBream implements the WSGI specification (Web Server Gateway Interface) with the help of PasteDeploy.
BlueBream includes a number of well tested components to implement common activities. A few of these are:
zope.publisher publishes Python objects on the web, emphasizing WSGI compatibility
zope.security provides a generic mechanism for pluggable security policies
zope.testing and zope.testbrowser offer unit and functional testing frameworks
zope.pagetemplate is an XHTML-compliant language for developing templates
zope.schema is a schema engine to describe your data models
zope.formlib is a tool for automatically generating forms from your schemas
On top of this, ZTFY provides a few set of additional packages, which allows you to manage a full web site in just a few minutes, including :
a complete content management interface (based on z3c.form)
an alternate ZMI
a structured web site, containing sections and articles, blog(s), topics…
images galleries
and many more little features, described on ZTFY home page.
You will also find on this web page all informations required to know how to create and setup a new web site using these packages.
Three simple skins are provided in the default setup, and a “nearly ready to use” configuration file for Apache2 mod_wsgi module is also provided.
Installation
If you have installed setuptools or distribute an easy_install command will be available. Then, you can install ZTFY.webapp using easy_install command like this:
$ easy_install ztfy.webapp
Internet access to PyPI is required to perform installation of ZTFY.webapp.
The ZTFY.webapp distribution provides a quick project creation tool based on PasteScript templates. Once ZTFY.webapp is installed, run paster command to create the project directory structure. The create sub-command provided by paster will show a wizard to create the project directory structure.
$ paster create -t ztfy.webapp
This will bring a wizard asking details about your new project. If you provide a package name and version number, you will get a working application which can be modified further. The project name will be used as the egg name. You can also change the values provided later.
The project name can be given as a command line argument:
$ paster create -t ztfy.webapp sampleproject
If you provide an option from the command line, it will not be prompted by the wizard. The other variables are given below, you can give the values from the command line, if required:
interpreter – Name of the custom Python interpreter
release – The version of ZTFY.webapp
version – The version of your project (eg:- 0.1)
description – One-line description of the package
long_description – Multi-line description (in reStructuredText)
keywords – Space-separated keywords/tags
author – Author name
author_email – Author email
url – URL of the homepage
license_name – License name
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 a 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 $ python bootstrap.py
The bootstrap script will install the zc.buildout and distribute packages. 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.
The most common thing you need while developing an application is running the server. ZTFY.webapp uses the paster command provided by PasteScript to run the WSGI server. To run the server, you can pass the PasteDeploy configuration file as the argument to serve sub-command as given here:
$ ./bin/paster serve debug.ini
Once you run the server, you can access it here: http://localhost:8080/ . The port number (8080) can be changed from the PasteDeploy configuration file (debug.ini).
The second most common thing must be running the test cases. ZTFY.webapp creates a testrunner using the zc.recipe.testrunner Buildout recipe. You can see a test command inside the bin directory. To run test cases, just run this command:
$ ./bin/test
Sometimes you may want to get the debug shell. ZTFY.webapp provides a Python prompt with your application object. You can invoke the debug shell like this:
$ ./bin/paster shell debug.ini
More about the test runner and debug shell will be explained in the BlueBream Manual. You can continue reading about BlueBream from the documentation site.
Resources
The bugs and issues are tracked at launchpad.
IRC Channel: #bluebream at irc.freenode.net
The source code is managed at Zope reposistory. You can perform a read-only checkout of trunk code like this (Anonymous access):
svn co svn://svn.zope.org/repos/main/bluebream/trunk bluebream
You can also become a source code contributor (committer) after signing a contributor agreement
You can see more details about contributing in wiki.
Changelog
1.1.5 (2013-09-23)
added ZTFY.base and ZODBBrowser in default project dependencies and configuration
1.1.4 (2013-06-14)
activate Fanstatic “bottom” option for resources, as all ZTFY packages are now compatible with it
remove several packages (ztfy.gallery, ztfy.hplskin and ztfy.alchemy) from standard configuration, as they are not required in most default environments
1.1.3 (2012-04-17)
moved main configuration file (configure.zcml) from src/webapp/ directory to etc/
register “overrides.zcml” from ztfy.skin package instead of ztfy.blog
removed ztfy.jqueryui ZCML files include
1.1.2 (2012-03-12)
added gzip filter in deploy.ini pipeline (Fanstatic configuration is not compatible with Apache’s mod_deflate for static resources)
added conditional Apache’s mod_upload_progress configuration
added mod_wsgi comments in generated README.txt
modified Apache’s mod_ssl configuration
changed application factory to force ++vh++ namespace in HTTPS
disabled site packages and picked versions in generated buildout
1.1.1 (2011-12-24)
changed WSGIScriptAlias path in Apache mod_wsgi configuration
1.1.0 (2011-12-18)
initial release (based on BlueBream)
Download
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file ztfy.webapp-1.1.5.tar.gz
.
File metadata
- Download URL: ztfy.webapp-1.1.5.tar.gz
- Upload date:
- Size: 26.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 05467ae4a385815421c00a53af7cda3288d5980c78772b05efef61492233ca2e |
|
MD5 | 51506d5b0fd30d3ef75540539b50af48 |
|
BLAKE2b-256 | 80a3a670ada89cad9b4a33d68712eb3d0680b520ee57af274740b244fc6f8e26 |
File details
Details for the file ztfy.webapp-1.1.5-py2.7.egg
.
File metadata
- Download URL: ztfy.webapp-1.1.5-py2.7.egg
- Upload date:
- Size: 41.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | ef5b275b94ba7a11bbcd6d753f5087a1f4084287d20aa551e3c39ea5d8da7035 |
|
MD5 | 0bc7002fcefc340ee37659d58e129c6a |
|
BLAKE2b-256 | 0281bcaf97fc9566ba2f10eaaee7bc1996330bd46af27f7b9446362fc10ef3d0 |