1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
|
.. _index:
===========
repoze.bfg
===========
:mod:`repoze.bfg` is a Python web application framework. It is
inspired by :term:`Zope`, :term:`Pylons`, and :term:`Django`. It uses
various Zope-related libraries internally to do much of its work.
:mod:`repoze.bfg` uses the WSGI protocol to handle request and
responses.
:mod:`repoze.bfg` is developed as part of the `Repoze
<http://repoze.org>`_ project by `Agendaless Consulting
<http://agendaless.com>`_ and other contributors. It is licensed
under a `BSD-like license <http://repoze.org/license.html>`_.
"What's New" Documents
======================
.. toctree::
:maxdepth: 2
whatsnew-1.2
whatsnew-1.1
Narrative documentation
=======================
Narrative documentation in chapter form explaining how to use
:mod:`repoze.bfg`.
.. toctree::
:maxdepth: 2
narr/introduction
narr/install
narr/configuration
narr/scanning
narr/project
narr/startup
narr/urlmapping
narr/traversal
narr/urldispatch
narr/views
narr/webob
narr/templates
narr/models
narr/security
narr/hybrid
narr/vhosting
narr/events
narr/environment
narr/unittesting
narr/hooks
narr/extending
narr/resources
narr/router
narr/threadlocals
glossary
API documentation
=================
Per-module :mod:`repoze.bfg` API documentation.
.. toctree::
:maxdepth: 2
api/authorization
api/authentication
api/chameleon_text
api/chameleon_zpt
api/configuration
api/events
api/exceptions
api/interfaces
api/location
api/paster
api/router
api/scripting
api/security
api/settings
api/testing
api/threadlocal
api/traversal
api/url
api/view
api/wsgi
ZCML Directives
===============
Documentation for each :mod:`repoze.bfg` :term:`ZCML directive`.
.. toctree::
:maxdepth: 2
zcml
Tutorials
=========
ZODB + traversal Wiki tutorial, demonstrating how to build a
:term:`traversal` based application using :term:`ZODB` and
:term:`authentication`. Good for people with prior Zope experience
(or no experience at all).
.. toctree::
:maxdepth: 2
tutorials/bfgwiki/index.rst
SQLAlchemy + url dispatch Wiki tutorial, demonstrating how to build a
:term:`url dispatch` based application using :term:`SQLAlchemy` and
:term:`authentication`. Good for people with prior Pylons experience
(or no experience at all).
.. toctree::
:maxdepth: 2
tutorials/bfgwiki2/index.rst
:mod:`repoze.bfg` for Zope CMF Developers
.. toctree::
:maxdepth: 2
tutorials/cmf/index.rst
:mod:`repoze.bfg` on Google's App Engine
.. toctree::
:maxdepth: 2
tutorials/gae/index.rst
:mod:`repoze.bfg` under :term:`mod_wsgi`
.. toctree::
:maxdepth: 2
tutorials/modwsgi/index.rst
Using ZODB's :term:`ZEO` with :mod:`repoze.bfg`
.. toctree::
:maxdepth: 2
tutorials/zeo/index.rst
Using ZODB Sessions in :mod:`repoze.bfg`
.. toctree::
:maxdepth: 2
tutorials/zodbsessions/index.rst
Detailed Change History
=======================
.. toctree::
:maxdepth: 1
changes
Design Documentation
====================
.. toctree::
:maxdepth: 1
designdefense
Sample Applications
===================
`repoze.cluegun <http://svn.repoze.org/repoze.cluegun/trunk/>`_ is a
simple pastebin application based on Rocky Burt's `ClueBin
<http://pypi.python.org/pypi/ClueBin/0.2.3>`_. It demonstrates form
processing, security, and the use of :term:`ZODB` within a
:mod:`repoze.bfg` application. It also has very simple
:term:`repoze.who` integration. Check this application out of
Subversion via::
svn co http://svn.repoze.org/repoze.cluegun/trunk repoze.cluegun
`repoze.virginia <http://svn.repoze.org/repoze.virginia/trunk/>`_ is a
very simple dynamic file rendering application. It is willing to
render structured text documents, HTML documents, and images from a
filesystem directory. This application runs the `repoze.org
<http://repoze.org>`_ website. Check this application out of
Subversion via::
svn co http://svn.repoze.org/repoze.virginia/trunk repoze.virginia
`repoze.shootout <http://svn.repoze.org/repoze.shootout/trunk/>`_ is
an example "idea competition" application by Carlos de la Guardia. It
demonstrates a hybrid of :term:`URL dispatch` and :term:`traversal`
and integration with `SQLAlchemy <http://www.sqlalchemy.org/>`_ and
:term:`repoze.who`. Check this application out of Subversion via::
svn co http://svn.repoze.org/repoze.shootout/trunk repoze.shootout
`bfgsite <http://svn.repoze.org/bfgsite/trunk>`_ is the software which
runs the `bfg.repoze.org <http://bfg.repoze.org>`_ website. It
demonstrates integration with Trac, and includes several
mini-applications such as a pastebin and tutorial engine. Check a
buildout for this application out of Subversion via::
svn co http://svn.repoze.org/buildouts/bfgsite/ bfgsite_buildout
`KARL <http://karlproject.org>`_ is a moderately-sized application
(roughly 70K lines of Python code) built on top of :mod:`repoze.bfg`
and other Repoze software. It is an open source web system for
collaboration, organizational intranets, and knowledge management, It
provides facilities for wikis, calendars, manuals, searching, tagging,
commenting, and file uploads. See the `KARL site
<http://karlproject.org>`_ for download and installation details.
Support and Development
=======================
The `BFG web site <http://bfg.repoze.org>`_ is the main online source
of :mod:`repoze.bfg` support and development information.
To report bugs, use the `bug tracker <http://bfg.repoze.org/trac>`_.
If you've got questions that aren't answered by this documentation,
contact the `Repoze-dev maillist
<http://lists.repoze.org/listinfo/repoze-dev>`_ or join the `#repoze
IRC channel <irc://irc.freenode.net/#repoze>`_.
Browse and check out tagged and trunk versions of :mod:`repoze.bfg`
via the `Repoze Subversion repository
<http://http://svn.repoze.org/repoze.bfg/>`_. To check out the trunk
via Subversion, use this command::
svn co http://svn.repoze.org/repoze.bfg/trunk repoze.bfg
To find out how to become a contributor to :mod:`repoze.bfg`, please
see the `contributor's page <http://repoze.org/contributing.html>`_.
Indices and tables
==================
* :ref:`genindex`
* :ref:`modindex`
* :ref:`search`
* :ref:`glossary`
|