Package: ztfy.webapp
Table of ContentsZTFY.webappIntroductionFeaturesInstallationUsageResourcesChangelog1.1.5 (2013-09-23)1.1.4 (2013-06-14)1.1.3 (2012-04-17)1.1.2 (2012-03-12)1.1.1 (2011-12-24)1.1.0 (2011-12-18)DownloadZTFY.webappIntroductionZTFY.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 onZTFY 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 asZope
3– is a web framework written in the Python programming language.BlueBream is free/open source software, owned by theZope Foundation, licensed under theZope Public
License(BSD
like, GPL compatible license).FeaturesHere are the features distinguishing BlueBream from other Python web frameworks:BlueBream is built on top of theZope Toolkit(ZTK), which has many years of
experience proving it meets the demanding requirements for stable,
scalable software.BlueBream uses the powerful and familiarBuildoutbuilding system written in
Python.BlueBream employs the Zope Object DatabaseZODB, 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 theZope Component Architecture(ZCA) which implementsSeparation of concernsto create highly cohesive reusable
components (zope.component).BlueBream implements theWSGIspecification (Web Server Gateway Interface) with the help ofPasteDeploy.BlueBream includes a number of well tested components to implement
common activities.  A few of these are:zope.publisherpublishes Python objects on the web, emphasizingWSGIcompatibilityzope.securityprovides a generic mechanism for pluggable
security policieszope.testingandzope.testbrowseroffer unit and functional testing
frameworkszope.pagetemplateis an XHTML-compliant language for developing
templateszope.schemais a schema engine to describe your data modelszope.formlibis a tool for automatically generating forms from your schemasOn 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 onz3c.form)an alternate ZMIa structured web site, containing sections and articles, blog(s), topics…images galleriesand many more little features, described onZTFY 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 Apache2mod_wsgimodule is also provided.InstallationIf you have installedsetuptoolsordistributeaneasy_installcommand will be available.  Then, you can install ZTFY.webapp usingeasy_installcommand like this:$ easy_install ztfy.webappInternet access toPyPIis required
to perform installation of ZTFY.webapp.TheZTFY.webappdistribution provides a quick project
creation tool based on PasteScript templates.  Once ZTFY.webapp is installed,
runpastercommand to create the project directory structure.
Thecreatesub-command provided by paster will show a wizard to
create the project directory structure.$ paster create -t ztfy.webappThis 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 sampleprojectIf 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 interpreterrelease– The version of ZTFY.webappversion– The version of your project (eg:- 0.1)description– One-line description of the packagelong_description– Multi-line description (in reStructuredText)keywords– Space-separated keywords/tagsauthor– Author nameauthor_email– Author emailurl– URL of the homepagelicense_name– License nameIf you are in a hurry, you can simply pressEnter/Returnkey and
change the values later.  But it would be a good idea, if you provide
a good name for your project.UsageThe 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.pyThe bootstrap script will install thezc.buildoutanddistributepackages.  Also, it will create the basic directory structure.  Next step is
building the application.  To build the application, run the buildout:$ ./bin/buidoutThe 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 thepastercommand provided by
PasteScript to run the WSGI server.  To run the server, you can pass
the PasteDeploy configuration file as the argument toservesub-command as given here:$ ./bin/paster serve debug.iniOnce 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 thezc.recipe.testrunnerBuildout recipe.  You can see atestcommand inside thebindirectory.  To run test cases, just run this command:$ ./bin/testSometimes 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.iniMore about the test runner and debug shell will be explained in the
BlueBream Manual.  You can continue reading about BlueBream from thedocumentation site.ResourcesZTFY home pageWebsite with documentationProject blogThe bugs and issues are tracked atlaunchpad.BlueBream WikiPyPI HomeTwitterMailing listIRC Channel:#bluebream at irc.freenode.netBuildbotThe source code is managed atZope 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 bluebreamYou can alsobecome a source code contributor (committer) after signing a
contributor agreementYou can seemore details about contributing in wiki.Changelog1.1.5 (2013-09-23)added ZTFY.base and ZODBBrowser in default project dependencies and configuration1.1.4 (2013-06-14)activate Fanstatic “bottom” option for resources, as all ZTFY packages are
now compatible with itremove several packages (ztfy.gallery, ztfy.hplskin and ztfy.alchemy) from
standard configuration, as they are not required in most default environments1.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.blogremoved ztfy.jqueryui ZCML files include1.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 configurationadded mod_wsgi comments in generated README.txtmodified Apache’s mod_ssl configurationchanged application factory to force ++vh++ namespace in HTTPSdisabled site packages and picked versions in generated buildout1.1.1 (2011-12-24)changed WSGIScriptAlias path in Apache mod_wsgi configuration1.1.0 (2011-12-18)initial release (based on BlueBream)Download