Skip to content

The solution to create and share maps, dashboards, geostories with 3D support on the web. And it is open-source too!

License

Notifications You must be signed in to change notification settings

geosolutions-it/MapStore2

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Ā 
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 

Repository files navigation

MapStore

Build Checks Coverage Status Master Documentation Status Twitter URL

MapStore is an open-source web mapping framework that enables users to create, share, and embed maps and dashboards with ease, drawing from a broad range of geospatial data sources. Designed for flexibility and scalability, MapStore integrates seamlessly with OpenLayers, Leaflet, and Cesium for both 2D and 3D visualization, allowing users to explore maps in a dynamic, real-time environment.

With built-in support for OGC standards (such as WMS, WMTS, WFS, 3DTiles and CSW), MapStore caters to the needs of professional GIS users while maintaining an intuitive interface for casual users. It supports rich feature configurations like layer styling, spatial analysis tools, and collaborative editing, making it a robust solution for diverse industriesā€”from urban planning to environmental monitoring.

MapStore's architecture is designed for modularity and extensibility, allowing developers to integrate custom plugins or adapt it for specific use cases. Whether you need to create interactive maps for publication or sophisticated geospatial applications, MapStore2 provides a solid foundation for building powerful web mapping solutions.

For more information check the MapStore documentation!

Documentation

You can find more documentation about how to build, install or develop with MapStore on the documentation site.

License

MapStore is Free and Open Source software, it is based on OpenLayers, Cesium, Leaflet and ReactJS, and is licensed under the Simplified BSD License.

Demo Instances

We have the following instances:

  1. a DEV instance, which can be accessed here, where all the changes are deployed once they are published on the Master branch of our repo
  2. a QA instance, which can be accessed here, that becomes active 1 week before any release, during the hardening phase, and deploys the release branch whenever a fix is pushed onto it.
  3. a STABLE instance, which can be accessed here, that gets deployed on demand after each release.

As a user you need to be aware of STABLE and DEV, QA is used internally before a release; for 1 Week it will diverge from STABLE as it is actually anticipating the next stable. So, if you want to test latest features use DEV, if you are not that brave use STABLE. You might forget that QA exists unless you are parte of the developers team.

Download

You can download the WAR file from the latest release MapStore documentation!

All the releases

Quick Start

There are two quick ways to test out MapStore. Either using Docker (all tags are available in the geosolutions dockerhub) or a local java web container like Apache Tomcat

Using Docker

* Run Mapstore as standalone container

Pull the latest image from Docker Hub:

docker pull geosolutionsit/mapstore2
docker run --name mapstore -p 8080:8080  geosolutionsit/mapstore2

Then you can access MapStore using the following URL:

http://localhost:8080/mapstore

Use the default credentials (admin / admin) to login and start creating your maps!

* Run the Mapstore with PostGIS through docker-compose in the local environment

  • To test a different release of MapStore, you should change the MAPSTORE_WEBAPP_SRC build argument in the docker-compose file.

  • You should change the value of POSTGRES_PASSWORD for more security.

  • Due to proxy binding on host port 80, you may need to run docker-compose as root.

  • To spin up the environment run:

    docker-compose up -d

Note: Take in consideration due to the requirements of the deployment, you should update the docker-compose to the latest version.


  • After the docker-compose finish, you can access to the site using following URL:

    http://localhost/mapstore

  • Use the default credentials (admin / admin) to login and start creating your maps!

  • After finished the test you can stop the environment with the command:

    docker-compose down
  • To clean the full environment:

    docker-compose down --remove-orphans --rmi all -v

Using the Web Archive (WAR file)

After downloading the MapStore war file, install it in your java web container (e.g. Tomcat), with usual procedures for the container (normally you only need to copy the war file in the webapps subfolder).

Check out here which version of Java and Tomcat are needed.

Then you can access MapStore using the following URL (assuming the web container is on the standard 8080 port):

http://localhost:8080/mapstore

Use the default credentials (admin / admin) to login and start creating your maps!

Start developing your custom app

Clone the repository:

git clone https://github.com/geosolutions-it/MapStore2.git

Install NodeJS (with npm), Java and Maven following the requirements here

Install docma to build the documentation

npm install -g docma

Start the demo locally:

npm cache clean (this is useful to prevent errors on Windows during install)

npm install

npm start

The demo runs at http://localhost:8081 afterwards (with the Java back-end running at port http://localhost:8080).

Build the deployable war:

./build.sh [version_identifier]

Where version_identifier is an optional identifier of the generated war that will be shown in the settings panel of the application.

Deploy the generated mapstore.war file (in product/target) to your favorite J2EE container (e.g. Tomcat).

Read more on the documentation site.

Professional Support

MapStore is being developed by GeoSolutions hence you can talk to us for professional support. Anyway the project is a real Open Source project hence you can contribute to it (see section below).

Communication

We currently have two mailing list:
one for users
one for developers.

The first one is for those who are willing to use MapStore and need help/directions, the latter is for those trying to extend/proposed fixes for MapStore.

Contributing

We welcome contributions in any form:

  • pull requests for new features
  • pull requests for bug fixes
  • pull requests for documentation
  • funding for any combination of the above

For more information check this page.

Who uses MapStore

Here below is a small list of organizations using MapStore either directly or through GeoNode. If you want us to add ( or remove šŸ˜Ÿ ) your organization from this list, please, contact simone.giannecchini@geosolutionsgroup.com .