On Thu, Mar 26, 2009 at 5:52 AM, Sanjiv Singh <[email protected]> wrote:
>
> Hi all,
>
> Sorry for joining in late. I had participated in GSoC last year with
> TurboGears and I am interesting the having another fun filled learning
> experience with the TurboGears team once again. I had a discussion on
> GSoC 2009 project with Chris Perkins already. He have me some ideas
> for this years GSoC. I have done a little research on them. Here are
> short outlines of the proposals I have come up with. Detailed
> proposals with milestones and timelines will be posted after deciding
> on the project.
>
> TG2 / Pylons CouchDB Backend
> ==================
>
> The idea is to create a new backend to support storing and retrieval
> of documents in CouchDB. This would basically involve adding extra
> configuration parameters for couchdb in development.ini /
> deployment.ini and setting up the server / db instances in
> tg.configuration.py. These server / db instances would be made
> available to the project.model.__init__.py for use in the couchdb
> model classes. Christopher Lenz's python-couchdb library could be
> used.
>
> One issue with couchdb ATM is that authentication is not supported. So
> SA should be included in all apps that require authentication till the
> time other repoze.who authentication backends are made available.
> Also, including SA would help in storing non-document oriented /
> traditional objects in a relational db.
>
> CouchDB has a RestFul web interface so it could very well be used on
> the client side (in-browser javascript) only, where all requests for
> document retrieval and manipulation are made directly to the database.
> But integrating it with a web framework may have certain advantages
> such as, integration with the auth & auth system provided by the
> framework, making use of other WSGI middleware along with the
> documents (possibly filtering / modifying them on the way), using it
> in conjunction with other relational objects stored in an RDBMS, etc.
>
> There is already some work going on in using couchdb to store
> geospatial data
> (http://vmx.cx/cgi-bin/blog/index.cgi/category/CouchDB). tgext.geo
> could also be enhanced to support couchdb.
>
> python-couchdb already has decent coverage. More unittests would be
> added as required in the form of patches. The glue code in tg2 /
> pylons codebase would be covered 100% by unittests.
>
> The detailed proposal with milestones and timeline would be prepared
> and posted to socghop app if the idea is accepted.
>
>
> Improving tgext.geo
> ============
>

+10 on this one..!!!

Lucas

> The tgext.geo project was developed as part of GSoC 2008 Toscawidgets
> project. As of now tgext.geo integrates Mapfish server and Tilecache
> into tg2. Mapfish is used for providing a restful web interface to
> geospatial data stored in a PostGIS backend and Tilecache is used to
> cache and serve map tiles. While these two applications could address
> a large number of geographic applications, there are areas where
> tgext.geo needs to improve to compete with other mainstream geospatial
> web frameworks like geodjango.
>
> Geodgango extends the django ORM to support geospatial data objects.
> ATM SQLAlchemy does not support geospatial databases like PostGIS,
> SQLiteSpatial or MysqlSpatial. A separate project could extend
> SQLAlchemy to add support for  these spatial databases.
>
> FeatureServer is another interesting python application meant for
> serving geographic objects. Featureserver could be integrated with tg2
> as a wsgi app. FeatureServer uses the FeatureServer.DataSource module
> for storing geospatial objects. The various supported DataSources are
> PostGIS, SQLite, WFS, OGR, etc. A DataSource for SQLAlchemy GIS
> Extension could be added so that the backend database could be
> integrated with the TG2 framework cleanly. By integrating
> FeatureServer with the tg2 we could have a geospatial web framework
> with all the goodies provided by TG2 like auth & auth, transactions,
> multiple databases, toscawidgets and indeed all the other wsgi
> middleware components.
>
> Care will be taken to have 100% unittest coverage of the SA GIS
> Extension. TG2 Featureserver integration would also be tested using
> functional tests. Documentation would be delivered as tutorials and
> api docs. Documentation on getting up and running with gis
> infrastructure (e.g. setting up postgis, getting sample gis data,
> etc.) would be delivered.
>
>
> Improving Sprox
> ==========
>
> Sprox, a model based automated widget generation framework is a much
> improved reincarnation of DBSprockets. It would be a nice project to
> work on enhancing Sprox's capabilities. Sprox already supports plain
> html and dojo based widget generation. It could be improved by
> including many more dojo based widgets. This could include various
> formfields (e.g. Textfields, Autocomplete Fields, Combo Box Fields,
> Rich Text Editor Fields, Single and Multiple Select fields, date and
> time selector fields, number spinner etc.)  based on hints provided by
> the config. A major part of the work will also go into developing
> toscawidgets for these widget types under tw.dojo.
>
> Sprox already has 100% coverage. All new code added will also have
> unittests for 100% coverage. The already excellent documentation of
> Sprox will be improved with api docs and tutorials for all new
> features added.
>
>
> What do others think about these ideas? Should I add them to the ideas
> page so that others may propose on them too?
>
> regards
> Sanjiv
>
> >
>



-- 
How to create python package?
http://lucasmanual.com/mywiki/PythonPaste
DataHub - create a package that gets, parses, loads, visualizes data
http://lucasmanual.com/mywiki/DataHub

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"TurboGears Trunk" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/turbogears-trunk?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to