Coder Social home page Coder Social logo

nstoykov / mergin Goto Github PK

View Code? Open in Web Editor NEW

This project forked from merginmaps/server

0.0 1.0 0.0 3.46 MB

Store and track changes to your geo-data

Home Page: https://public.cloudmergin.com

License: GNU Affero General Public License v3.0

Dockerfile 0.19% Shell 0.10% Python 39.70% HTML 6.18% CSS 0.29% JavaScript 5.81% Vue 46.40% Sass 1.25% SCSS 0.09%

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

wonder-sk avatar saberraz avatar varmar05 avatar peterpetrik avatar

Watchers

James Cloos 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.