Coder Social home page Coder Social logo

muhtadii / meetyourmappers Goto Github PK

View Code? Open in Web Editor NEW

This project forked from mvexel/meetyourmappers

0.0 0.0 0.0 281 KB

Find other OpenStreetMap mappers around you

License: MIT License

Python 31.11% CSS 3.84% JavaScript 37.28% HTML 26.30% Shell 1.48%

meetyourmappers's Introduction

Meet Your Mappers

Meet Your Mappers (MYM) is a simple tool to retrieve a list of active mappers around you. This can come in handy when you want to invite people to a mapping party or another local OSM event you are organizing. Or perhaps you have just always wondered who else is mapping a lot in your area.

MYM does that, and only that, for you. It will not give you detailed breakdowns of what everyone mapped and where, there are great tools out there for that already, like Simon Legner's Whodidit, Wille Marcel's OSMCha and Pascal Neis's Who's Around Me.

Usage

This is a bit of a hack so you need to do a few steps. Please help make this tool easier to use by contributing improvements if you can!

The OSM data needed to get you your answers is retrieved from Overpass. Please be mindful of this and don't try to request answers for huge areas.

  1. Search for your town, county or equivalent on OSM
  2. Note down or copy the OSM ID of the boundary relation.

A boundary relation ID is currently the only input method, so if your area of interest does not have that, you're out of luck.

  1. Go to mym.rtijn.org
  2. Paste the relation ID in the input box
  3. Click 'Go'

Next, MYM will retrieve the OSM data for your area from Overpass and analyze it. This may take up to a minute or so, depending on the amount of data.

When it's done, You see a table with users. By default they are sorted by magic, which is an attempt to group users into classes.

Standalone usage

If you have OSM files on your local machine and you want to run the tool on those, follow these steps:

  • Create the virtual environment and install dependencies (see below under Installation > Development)
  • run python3 meetyourmappers/osm.py YOUR_OSM_DATA_FILE > out.json

The file can be any format osmium supports.

Installation

The configuration for the backend should be written to config_local.py file in the meetyourmappers directory. See possible keys in the config.py file.

Development

  • Clone the repository
  • Install dependencies (Flask, osmium, requests) in a virtual environment
  • If you want to test data downloads, set data_dir and data_alias to data and create a directory data in the application directory.
  • run.sh

Production

  • Clone the repository
  • Create a data directory, chown to www-data
  • Configure Apache (see example)
  • Set up a cron job to empty the data directory periodically, something like 0 * * * * find /var/www/data/ -type f -mmin +60 -delete

Development

MYM uses the following technologies:

  • Python
  • Flask
  • PyOsmium
  • JQuery
  • DataTables

If you encounter a bug or have an idea for improvement, please file it as an issue before you start working on it, so we can discuss (unless it's something really trivial).

Javascript is not really my thing so forgive me for that mess.

meetyourmappers's People

Contributors

mkobar avatar mvexel avatar zverik 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.