jQuery Geo - A JavaScript mapping API

jQuery Geo, an open-source geospatial mapping project from Applied Geographics, provides a streamlined JavaScript API for a large percentage of your online mapping needs. Whether you just want to display a map on a web page as quickly as possible or you are a more advanced GIS user, jQuery Geo can help!

You can check back here or follow @jQueryGeo on Twitter for release announcements. Also, head over to the lead developer's Twitter account, @ryanttb, for development info, links, or to ask questions.


Using jQuery Geo requires adding one element, including one script (apart from jQuery itself) and calling one function. The following copy-and-paste snippet will help you get started.

<div id="map" style="height: 320px;"></div>
<script src="http://code.jquery.com/jquery-1.9.1.min.js"></script>
<script src="http://code.jquerygeo.com/jquery.geo-1.0.0-b2.min.js"></script>
<script>$(function() { $( "#map" ).geomap( ); });</script>

code.jquerygeo.com is on the CloudFlare Content Delivery Network (CDN) so our minified, gzipped library will get to your client as fast as possible!

Beta 2 released!

After almost 150 commits to our first beta and many months of testing & usage, we are happy to announce jQuery Geo 1.0.0 beta 2! This beta was actually built last September but the release has been delayed due to the lead developer's wedding (Ryan Westphal => Ryan Morrison~Westphal!) that very month :)

Jumpy shapes & zoom levels

The area which got the most treatment before this release was shape drawing, specifically when panning or zooming. Releated, pinch-zoom on mobile devices and laptop touchpads have improved for tiled services.

jQuery 1.9 required

Deferred objects changed in jQuery 1.9 and, instead of continuing to support the older functionality, we're making jQuery 1.9 the required minimum version.

JS Bin

All examples have been converted to & link to JS Bin. Feel free to clone any of them and provide feedback in GitHub.

New docs

The documentation pages are now using Bootstrap & should provide a cleaner experience across devices. The new "docs" subdomain, docs.jquerygeo.com, will always host documentation for the latest stable release. The new "test" subdomain, test.jquerygeo.com will host pre-release documentation that is subject to change at any moment but can give you an idea of planned changes to jQuery Geo.

No more betas

The API hasn't changed much since the last beta a year ago. Our next release will be an RC.

Full changelog

* project - update jQuery dependency to 1.9 in package 
* geomap - [bug] deferred src functions no longer work
* geomap - [bug] map does not always redraw shapes after interactiveTransform, a pan will fix them
* docs - geomap - make zoomFactor an init-only public option
* geomap - make zoomFactor an init-only public, option
* geomap - support touch/mouse events on hybrid devices
* docs - geomap - top-level map label links are clickable
* docs - geomap - click mode
* geomap - click mode
* geomap - decrease z-index from attr & shape label links & document how to hide them behind non-map conent
* geomap - [bug] removing a shape from one service that has been appended to two services causes an error in the second service
* geographics - [bug] graphics stretch after resize
* project - upgrade to gruntjs 0.4.1
* geomap - support Windows 8 Store apps
* geomap - [bug] #93 mac and some pc touchpads zoom too quickly
* geomap - [bug] static string urls for service object src do not work with jQuery > 1.7
* geomap - [bug] append can ignore style
* geomap - [bug] polygon not displayed when a longitude is -180.0
* geomap - [bug] can't use $.geo.include with $.geo.proj = null
* geomap - [bug] exception thrown when appending a labeled shape where centroid cannot be calculated
* geomap - [bug] labels for non-basic shapes do not show
* docs - geo - $.geo.WKT object
* geo - $.geo.WKT object
* geomap - Chrome - [bug] after remove, shapes are not refreshed
* geomap - [bug] find method does not work on all Multi* geometries
* geomap - [bug] leaving the map page and then going 'back' in the browser does not refresh shape only maps
* geomap - [bug] zoom on shingled graphics service briefly renders wrong shapes
* geomap - [bug] links in labels can't be clicked with doubleBuffer canvas
* geomap - [bug] #123 browsers can pinch past min/max zoom levels
* geomap - [bug] map doesn't refresh to correct pixelSize after pinch zoom that doesn't break zoom level boundaries


Thanks for checking out jQuery Geo! We hope you find it useful and will keep you updated as we press on to a 1.0 release!

Click here to checkout previous changelogs


The links above will always point to the latest stable release. However, you can test the most recently committed docs, code & demos by heading over to the test release.

Test docs & demos