Git Product home page Git Product logo

mergin's Introduction

Mergin

Store and track changes to your geo-data

About

Mergin is a web platform for storage and synchronisation of geospatial projects across multiple users and devices (desktop and mobile). The platform is especially useful when you need:

  • Mobile data collection. If you need to capture location of assets (and their attributes) or update an existing database.

  • Data sharing. No complicated setup of access by IT admins to get your data to colleagues or clients. Set up permissions and send invites with few clicks.

  • Offline access. Work with data with no interruption even without constant Internet connection - sync any changes when you are back online.

  • Collaborative editing. No more problems dealing with multiple copies of the same dataset in different versions - all changes are automatically consolidated in one place.

  • Audit changes. Knowing who has changed what and when in a database is often important - Mergin keeps track of the history and allows to go back if needed.

  • No coding required. Everything can be set up with no knowledge of programming.

Mergin organises all data in projects. A project in Mergin is a directory containing various data files - GeoPackages, QGIS project files, documents, pictures and more. As soon as a project is uploaded to Mergin, it can be easily accessed directly from the web, from QGIS or from iOS/Android via Input app.

Screenshots

Mergin web


Dashboard

Project files

Project version history

Project settings

Mergin in Input app
Input app

Mergin in QGIS
Mergin in QGIS

Features

  • ๐ŸŒ Store data - GeoPackages, QGIS project files, GeoTIFFs, pictures or any other data easily
  • ๐Ÿ“ฑ Mobile devices - Great for working on field surveys, thanks to Input app based on QGIS, for iOS and Android
  • ๐ŸŒŸ QGIS integration - Mergin plugin is available to help with project setup and seamless syncing within QGIS
  • ๐Ÿ‘ฅ Multi-user editing - Changes to vector/attribute data from multiple users are automatically merged
  • ๐Ÿ“– Data versioning - Keeping history of all changes, allowing to go back if needed
  • ๐Ÿ”Œ Offline editing - Clients do not need to be online all the time - only when syncing changes
  • ๐ŸŒฑ Sharing with collaborators - Projects can be shared with other team members
  • ๐Ÿฐ Granular permissions - Decide who can read, write or manage projects
  • ๐ŸŒˆ Web interface - Simple user interface to view and manage projects
  • โšก๏ธ Fast - Efficient sync protocol transfering data between clients and server
  • ๐Ÿง‘โ€๐Ÿ’ป Developer friendly - Mergin is open platform. CLI tools and client libraries available for Python and C++
  • ๐Ÿ“ท Sync images - Supporting sync of photos with common cloud storage using mergin-media-sync tool
  • ๐Ÿ’ฝ Sync with database - Supporting two-way sync of data with PostGIS using mergin-db-sync tool
  • ๐Ÿ‘ทโ€โ™€๏ธ Work packages - Split main database to smaller chunks for teams using mergin-work-packages tool

Mergin offers a unique combination of features that other tools do not provide out of the box:

  • relational databases (such as PostGIS or Oracle) are great for keeping a central repository of spatial data, but offline access, versioning and sharing outside of a single organisation are complicated to set up.

  • traditional storage products (like Dropbox or Google Drive) are great for storage of large amounts of data (pictures/videos) and offering offline access, but concurrent access to data (e.g. a single vector layer) is not going to work well.

Quick start

Try Mergin at https://public.cloudmergin.com/ - the SaaS service run by Lutra Consulting, the makers of Mergin.

Running with Docker

Run Mergin locally is easy. Adjust configuration in docker-compose.yml, e.g. replace 'fixme' entries and run with docker-compose:

$ docker-compose up
$ docker exec -it mergin-server flask init-db
$ docker exec -it mergin-server flask add-user admin topsecret --is-admin --email [email protected]
$ sudo chown -R  901:999 ./projects/
$ sudo chmod g+s ./projects/

Projects are saved locally in ./projects folder.

Admin users can additionally enter the admin interface available at /admin URL which provides management of users, projects and other bits of the Mergin instance.

Documentation

For user help and documentation, visit https://help.cloudmergin.com/ If you'd like to contribute and improve the documentation visit https://github.com/lutraconsulting/mergin-docs

For the Input mobile app, visit https://inputapp.io/ - with more documentation at https://help.inputapp.io/

Join our community chat
and ask questions!

Get in touch

If you need support, a custom deployment, extending the service capabilities and new features do not hesitate to contact us on [email protected]

Developers

Contributions are welcome!

More information for developers can be found in the dedicated development page.

Client side modules:

  • Python client library + CLI
  • C++ client library + CLI

More related tools:

Learn more about geodiff - the low-level library providing seamless merging of changes from multiple sources.

License

Mergin is open source and licensed under the terms of AGPL licence.

mergin's People

Contributors

peterpetrik avatar saberraz avatar varmar05 avatar wonder-sk avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.