From the very beginning, GeoMapFish has been an Open Source project whose specific goal was to build a generic WebGIS application ready to use and ready to extend to your specific needs. With this strategy in mind, the GeoMapFish User Group has grown rapidly and the solution has been extended to a large set of features and options, making it one of the most complete WebGIS applications available on the market.
GeoMapFish is an open source WebGIS platform developed in close collaboration with a large user group. The second version offers a modern UI based on AngularJS. OpenLayers 3 and an OGC architecture allow to use different cartographic engines. Highly integrated platform, large features scope, fine grained security, reporting engine, top performances and excellent quality of service are characteristics of the solution. In this talk we’ll present the technical aspects of the platform and its modular architecture.
3. 3/54www.camptocamp.com / 25.08.16
The GeoMapFish WebGIS
1 ligne 2 ligne 3 ligne 4 ligne
0
2
4
6
8
10
12
1 colonne
2 colonne
3 colonne
Rich WebGIS, community driven development, interoperable
4. 4/54www.camptocamp.com / 25.08.16
GeoMapFish Community Goal
■ Ensure the sustainable development of a leading open source WebGIS
■ Key aspects
- Promote an inclusive dialog between users and developers
- Protect consensual decision making regarding roadmap and new features
- Target a fair funding
- Regular ressources stream for maintenance and features development
- Broad contribution basis to keep the contribution level as low as possible
- Contributions on a free basis
■ The model has been working since 2011 and allowed to develop
- 2 majors version of GeoMapFish
- 7 minors versions
5. 5/54www.camptocamp.com / 25.08.16
Users community
■ Public agencies/Surveying offices, with the mission to diffuse Geodata on
the internet to help citizens, engineers, architects access and analyze public
geodata with a WebGIS:
- Swiss Cantons (BL, SZ, BS, NE, JU, VD, GR)
- Cities (Lausanne, Yverdon, Pully, Morges, Nyon, Vevey, Montreux, Neuenburg,
Paudex, Nendaz, usw.)
- Engineer offices (AlpGIS, Rudaz, Peitrequin, Gemetris, NPPR)
- Facility Management: ETH Lausanne, Flughafen Lyon
■ A classic WebGIS is needed.
- Easy management
- Customizable
11. 11/54www.camptocamp.com / 25.08.16
A global collaboration
■ Between local and regional organizations
■ Extended to national collaboration...
- National agencies like swisstopo, Luxembourg
■ ... on different technologies:
- Middleware:
- Debian/Redhat Packages
- Docker Container
- Software libraries
- OpenLayers
- MapFish
- User Extensions
- Plugins (CGXP & ngeo)
12. 12/54www.camptocamp.com / 25.08.16
Software architecture concepts
■Focus: architecture coherence
- Mapservice configuration: Layers, Queries, Legend => WMS/WFS
- 1 PostgreSQL table for the fulltextsearch
- Administration GUI: Layertree and security configuration
- Code organization for seamless update
■Freedoms
- Layout, features and cusotmizing without forking the application
■« Parent/Child projects »
- Avoiding configuration redundance
■Security
- Feature, layer, multipolygon, attribute
40. 40/54www.camptocamp.com /
Software architecture libraries V2
■ Client side
○ Openlayers 3
○ AngularJS
○ Ngeo: Library combining OpenLayers 3 and AngularJS
○ Bootstrap
■ Server Side == Update GMF 1
○ MapFish Protocol and OGC Protocols
○ Pyramid (Pylons Framework)
○ Closure Compiler (advanced mode)
■ A lot of Continous Integration (CI) tests
41. 41/54www.camptocamp.com /
Ngeo – Design principles
■ Provide atomic components that can be combined in
many different ways
■ https://github.com/camptocamp/ngeo
■ ngeo core
■ ngeo contribs
○ contribs / gmf
52. 52/54www.camptocamp.com /
Roadmap
■ V2.1 BETA about to be released
■ Perspectives
○ Add 3D views (Cesium)
○ Tighter integration with QGIS and QGIS Server
○ Integrate with geOrchestra, the INSPIRE SDI
53. 53/54www.camptocamp.com /
More information
■ GeoMapfish : http://geomapfish.org/
○ Demo
○ On-line WebGIS Links
○ Source Code (github)
■ Visit us
○ Camptocamp booth
■ Practice
○ We are hiring!