This page last changed on Apr 06, 2011 by whatnick.

Welcome!  This page contains ideas for student projects for GeoServer Google Summer of Code 2011.  GeoServer is built on Java, and we are assuming all students interested in working on GeoServer will have solid Java knowledge.  Many of the flashier components around GeoServer are built on JavaScript and OpenLayers, so if you are interested in the front end please see the OpenLayers Summer of Code page.

No geospatial or GIS knowledge is required to work on GeoServer, though it will not hurt. We've tried to keep the projects constrained enough to give time to learn the required domain knowledge. Other Java technologies that are useful to know, but not required, are Spring, Servlets, JDBC, Tomcat, Maven, Eclipse and JAI. Note that GeoServer relies heavily on GeoTools, which is also part of SoC, and several of these ideas may end up as mostly coding in GeoTools.


  • Security subsystem improvements — learn Spring Security and work on improving GeoServer built-in authentication and authorization subsystem. The current system uses only basic authentication and a flat text file with very few rule types. There is a lot that can be added/improved, sky is the limit. Proposal for authentication improvments
  • Symbol server — Create a web service API allowing a remote client to list, retrieve, compose and manipulate existing symbols
  • WorldWind Integration — Provide better links between the two projects.
  • AtomPub Feature Editing — Exposing an Interface for Feature Access and Editing based on the Atom Publishing Protocol.
  • REST Configuration Clients — A client library for accessing GeoServer REST configuration

Hints for Students

When evaluating applications we are mostly looking for a level of technical competence, and evidence that you understand the project and have a plan that can be accomplished in the summer. It's best to lay out a plan of how you will tackle the problem, including proper amounts of time to learn the new technologies. Also note we prefer a more modest, well thought out plan to a really ambitious scope - we want to be sure that there is a clear contribution at the end of summer that we can use and that you can point to. Please follow the links in the 'technical resources' sections below and don't hesitate to ask questions on irc or on the lists if you don't understand things - it doesn't show lack of knowledge, on the contrary it shows a willingness and ability to communicate, which is far more important in an open source project than raw technical skill.

Document generated by Confluence on May 14, 2014 23:00