A few days ago I pushed papyrus_mapproxy on Github. The objective of
papyrus_mapproxy is to make it easy to embed MapProxy in Pyramid
This new module is a good opportunity for me to describe what I've been
up to with Papyrus.
I have developed five Papyrus modules: papyrus, papyrus_tilecache,
papyrus_mapproxy, papyrus_ogcproxy, and papyrus_mapnik. The last four
are companion modules for the first one.
I wrote these modules to learn Pyramid, and assess its extensibility,
with the goal to eventually provide extensions that will ease the work
of Pyramid developers working on mapping apps.
The main module, papyrus, provides conveniences for creating feature
web services. For example, it provides a GeoJSON renderer, and a full
implementation of the MapFish Protocol.
The papyrus_tilecache and pyramid_mapproxy modules make it easy
to embed TileCache and MapProxy in Pyramid apps, respectively.
The papyrus_mapnik module aims to ease using Mapnik in Pyramid
apps. This module is experimental, and would need some work to be
The papyrus_ogcproxy provides a proxy service for OGC protocols. It
was developed for working around the Same Origin Policy implemented in
I believe there's high value in embedding services, like tile rendering
and caching services, in the web application. That can greatly ease
deployment. It also allows leveraging transverse layers of the
application, like the security layer.
Building a consistent, well integrated, and scalable application that
requires external independent services is, to say the least, a big
challenge I think. Assembling different types of services within a
single application, relying on horizontal scaling, is much more
appealing to me.
Anyway, any feedback on Papyrus is welcome!
There are comments.