Giter Club home page Giter Club logo

osm-deep-history's Introduction

OSM Deep History

A better way to view the history of objects in OpenStreetMap.

Example history views:

  • Node
  • Way (The map needs a few seconds to load)

It's an enhancement base on osmlab/osm-deep-history with below update:

Common:

  • Improve map UI and fix issues
  • When mouse hover on table cell, highlight corresponding version of object on map and pan to center
  • In table, show version which is invisible in red (removed)
  • Base map layer: OpenStreetMap and Mapbox Satellite Streets
  • Export full data of specific version in Level0L format

Node:

  • Show lat, lon in table
  • Show way(s) which the node belongs to

Way:

  • Show history versions of way on map

Development

The source code has been rewritten mostly in ES6, using Promise and functional style.

To rebuild and run locally:

npm install
npm run build
npm start

osm-deep-history's People

Contributors

aleung avatar andrewharvey avatar bezdna avatar deevroman avatar iandees avatar someoneelseosm avatar tmcw avatar tomhughes avatar tyrasd avatar willemarcel avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

osm-deep-history's Issues

Hint about Show More

Maybe it's just me, but even when on OSM Deep History, it wasn't immediately obvious that I could get visual history of a way (as I was looking for) and if it was possible that I could do it by clicking show more.

I wonder if some sort of basic tutorial guide, or a little hint for new users under the NWR and id boxes saying some text.

Or making the show more button text longer/more descriptive as to what it will show. For a node with more history will it also fetch further versions?

Vertical scroll bar hides the horizontal scroll bar

For example, in the deep history for relation 1703814, there is a vertical scroll bar caused by many tags and a horizontal scroll bar caused by many versions. In this case, the horizontal scroll bar is not always visible

2016-07-24 09_18_16-osm deep history

The horizontal scroll bar is visible only when the page is scrolled all the way down, but now the header rows are not visible any more.

2016-07-24 09_18_28-osm deep history

- Can both scroll bars are visible regardless of the position of the other scroll bar? - It would be even better if only the tag **values** part of the page will scroll, while keeping the visibility of: 1. The tag labels on the left, as currently happens 2. The top 5 rows of the table: Version, Time, Changeset, User, and Tags 3. The search form at the top

Pull request: feature enhancement

I've made some improvement on this project to add features:

Common:

  • Improve map UI and fix issues
  • When mouse hover on table cell, highlight corresponding version of object on map and pan to center
  • In table, show version which is invisible in red (removed)
  • Base map layer: OpenStreetMap and Google Satellite
  • Export full data of specific version in Level0L format

Node:

  • Show lat, lon in table
  • Show way(s) which the node belongs to

Way:

  • Show history versions of way on map

@iandees
I would like to contribute my change back to this project. But the changes are big, I don't know if all these are align with your plan on the project. The source code has been rewritten a lot with ES6, Promise and functional style. (It's supported by most of modern browsers.) So I hesitate to raise a PR. Would you like to have a look first?

Code and readme: https://github.com/aleung/osm-deep-history

Example:

  • Node
  • Way (The map needs a few seconds to load)

raw HTML in OSM tags shouldn't be inserted into the document

.html(function (d) {
looks to be vulnerable to Stored XSS attacks. It doesn't appear that selection.html does any sanitation, so HTML in an OSM objects' tags are inserted into the DOM for example at https://osmlab.github.io/osm-deep-history/#/way/238028224

If we made

_.forEach(tags.sort(), tag => tbody.append('tr').call(row(tag, tag, null, true)));
call a version of row that used selection.text it should solve the issue.

formatting bug with chrome

Hi,

A bug with chrome (I have the last version 96.0.4664.93) when history is very big = the columns are not aligned and the end of the second row (with the date of the changeset) is offset from the other rows :
Capture d’écran Chrome

With Firefox, colons are ok :
Capture d’écran Firefox

Best regards

Include geometries for different versions on a map

This is already there for node deep-history, but for ways it becomes quite a bit more complicated. We need some way of showing what a way looks like between each way version (because nodes can move without the way changing version).

I was thinking a timeline under the map with a point for each geometry change?

Also have to figure out how to handle the possibly long delay as the browser loads the history for each object.

This should probably not be done for relations quite yet.

Right click>Paste doesn't work if box is empty

Hi
<bit quiet around here, isn't it?>

I'm unable to right click & paste the id number into the box if it is empty. If there's is a number & I 'select all' I can do this.
Ctrl V works as expected.

secure page not working with current firefox

firefox now automatically removes some http-only links on https sites. Thats why deep history is not working any longer as https version, I fixed the secure connections and sent a pull request #5 some time ago

License?

The LICENSE file is Apache 2.0 license, while in package.json the license is BSD. Which one is correct?

show relation members

I think it would be useful if the relation history view could also show members in the diff, to see how the members of a relation has changed over its history.

Reverse order of versions

Hi
Although viewing the earliest versions of an object are useful, I find myself being most interested in the last two or three & having to scroll the list to the end. if think it would be beneficial to have the default view displaying the most recent at the far right, or maybe reversing the list so the recent edits were to the left.

Latest Features

Hi
I'm liking the latest updates. Request for a couple of tweaks:

Could the horizontal scroll bar be permanently visible at the bottom of the screen? If an entity is quite old it accumulates many historical tags making the list & scroll bar disappear off the bottom of the window.

image

Could abutment between the map & the tag list be horizontally slidable so the image can be reduced and/or an option to hide the map? This enable more edits to be displayed without scrolling.

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.