Core Development

What is Core Development?

Core development adds new features to the open source projects we participate in: GeoServer, OpenLayers, GeoExt and PostGIS.

We have prepared “road maps” of features and activities we consider important to the continued growth and maturity of the projects.

OpenGeo offers reduced rates for programming of items in the core development road maps.

A common question we get is “will this feature be in the next release?”

The only way to ensure a feature is added on a particular schedule or before a particular release is to fund the development of that feature.

Tell us what road map feature you are interested in, and how much funding you can put behind it.

We will combine your support with others until there is enough backing to complete the feature. For more information see the FAQ.

GeoServer

Integrated Web Processing Service (WPS)

Perhaps the only true feature that GeoServer lacks relative to traditional GIS servers like ArcGIS Server is the capability to do 'processing' - performing spatial operations and analysis to the geospatial data served by GeoServer. A WPS in GeoServer will be fully integrated to perform real operations at the level of the data, instead of relying on parsing GML or reading large raster files over the network like the standalone WPS implementations.

WMS 1.3

GeoServer always tries to stay up on the latest standards, but no one has yet funded WMS 1.3. Most of the needed infrastructure is already in place, as it was required for WFS 1.1. But the bindings need to be built and it must pass the CITE compliance tests.

More road map items...

GeoExt

COGO Geometry GUI

Creating new geometry from COGO directions is a common use case for web editing tools in county and municipal jurisdictions. This work item will create a GUI for users to enter COGO directions and return traverse data model suitable for converting to a feature or serializing to a database.

Login Manager

Many applications will need to allow users to logon to a remote server, be it for remote administration, editing of data, or controlled view access. GeoExt should have a default manager for logging on, with different options for the backend login mechanism and desired front-end gui dialog.

More road map items...

GeoWebCache

Seeding Improvements

Seeding is the process of pre-populating the cache with tiles. Currently a seed request can only take a bounding box. One improvement we could make is to let the seeder take a polygon, which can efficiently delimit the area of interest, saving significant time and bandwidth. Another improvement to be made is depth-first seeding, for cases when the center of the seed is of the most interest.

Clustering

Several improvements to GeoWebCache could be done to better support clustering for reliability and scalability. While traditional clustering techniques work there are several unique aspects of geospatial cache clustering which can be optimized for directly in the GeoWebCache codebase.

More road map items...

OpenLayers

Cascadenik CSS-like language

Support Cascadenik, a way to style maps in using a syntax similar to CSS, as a way to persist and create OpenLayers style objects. Makes cartography easy for web designers.

Build Polygon Tool

Polygon collections are very often generated as sets of shapes that share boundaries. Rather than digitizing new polygons and using snapping to create a duplicate bounding, a “build polygon” tool allows users to add new polygons on to the sides of existing polygons.

More road map items...

PostGIS

Asset Tracking Model

Tracking collections of moving objects, querying the historical data for relationships, and maintaining alarms when objects enter/leave areas is now a very common use case. The objects might be trucks, planes, boats, people, and so on. A standard data model, support functions, and API for efficient handling of this case would be helpful.

Indexed Nearest Neighbor Searches

Currently nearest-neighbor searching is carried out with ad hoc tricks that expand a search radius until a candidate set is generated, then finding the closest value in the candidate set. A directly indexed approach would be optimally fast.

More road map items...