[Twisted-web] Bootstrapping for Nevow
purestorm at ggnore.net
Tue May 17 14:09:15 MDT 2005
-----BEGIN PGP SIGNED MESSAGE-----
dialtone requested a more verbose example on IRC, so here it is.
My basic idea is that having a common application structure would
allow for reuseable components (I mean "embeddable applications")
like forums, weblogs, younameit.
When developing in such a "best practice" you would create self-
contained packages for each "logically seperated" part like such
applications as stated above. The applications would be reuseable,
then, and one could imagine that there could be a central repository
of such applications.
IMO there would also be a need for a central authentication and
permission handling package so a forum application can access the
same data as a CMS application. All this looks a bit like the concept
"Zope" and "Zope Products" have. I don't really like Zope because of
its ZODB integration into everything, the templating system etc. but
I think it is very successful because you have myriads of components
you can base your web sites on.
If there was a "common auth infrastructure" and a definition of how
components have to look for the outside and how you can embed them
into your code, I think Nevow would become much more effective to
work with since code becomes reuseable.
Maybe these are ideas are not new to the Nevow project and its
community and they had their reasons not to create such structures,
but I just wanted to raise the issue to see what happens ;)
PS: Here is an example of the code layout:
# The project root contains the tac file to run the server and the "site
# specific" modules.
# This package contains files that are "glue" for the other
# the "main layout" template containing <html>...</html>.
# This module defines rend.Page chidren like a RootPage etc.
# another module with site specific things
sql/ (if desired)
# These are other self-contained, but site specific modules.
# be a custom user management, a forum etc. with all the
# code, CSS, JS, images etc.
# The "module repository" contains reuseable, "embeddable"
# could be a user management system that brings login forms etc, a
# The packages here have the same structure as the packages above
# project's directory.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (Darwin)
-----END PGP SIGNATURE-----
More information about the Twisted-web