You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Quincy Morgan 72d56e54e8
Merge pull request #8375 from openstreetmap/dependabot/npm_and_yarn/uglify-js-3.13.0
1 day ago
.github Update transifex path 2 months ago
.tx Don't point transifex config to presets source file (close #8234) 3 months ago
config Switch to core-js for polyfills 5 months ago
css Update to id-tagging-schema v3.0.0 3 months ago
data Merge pull request #8276 from openstreetmap/1ec5-display-name-direction 2 months ago
dist Update en.min.json 1 week ago
docs Swap out w8r/martinez clipper for mfogel/polygon-clipping 1 month ago
modules Update Mapillary.Viewer call for mapillary-js v3 (re: #8245) 1 week ago
scripts Switch from Travis CI to GitHub Action `build.yml` 3 months ago
svg Add icon 3 months ago
test Fix code tests for #8276 for real this time 1 week ago
.editorconfig Update editorconfig for JavaScript syntax 1 year ago
.eslintrc Enable func-call-spacing eslint rule 4 months ago
.gitattributes Update .gitattributes to use lf eol for .js files 2 years ago
.gitignore Remove some unneeded variables. 5 months ago
.npmignore remove data.js 1 year ago Update 3 months ago Depend on id-tagging-schema for presets 4 months ago Flag points as areas or lines, areas or lines as points, and lines as areas (close #8231) 3 months ago v2.19.5 4 months ago Add Code of Conduct 5 years ago Fix contributing document typo (#8331) 1 month ago Update various files for removal of `master` branch 12 months ago Update date 4 years ago Update the privacy policy to account for the JSDelivr CDN integration 3 months ago Switch from Travis CI to GitHub Action `build.yml` 3 months ago Add reminder about iD's URL parameters to releasing doc 5 months ago
babel.config.json Switch to core-js for polyfills 5 months ago
index.html Disable elastic scroll page bounce on standalone iD (close #7576) 9 months ago
package.json Bump uglify-js from 3.12.8 to 3.13.0 3 days ago

iD - friendly JavaScript editor for OpenStreetMap



  • iD is a JavaScript OpenStreetMap editor.
  • It's intentionally simple. It lets you do the most basic tasks while not breaking other people's data.
  • It supports all popular modern desktop browsers: Chrome, Firefox, Safari, Opera, Edge, and IE11.
  • iD is not yet designed for mobile browsers, but this is something we hope to add!
  • Data is rendered with d3.js.


Come on in, the water's lovely. More help? Ping quincylvania or bhousel on:


  • Node.js version 10 or newer
  • git for your platform
    • Note for Windows users:
      • Edit $HOME\.gitconfig:
        Add these lines to avoid checking in files with CRLF newlines
        autocrlf = input


Note: Windows users should run these steps in a shell started with "Run as administrator". This is only necessary the first time so that the build process can create symbolic links.

To run the current development version of iD on your own computer:

Cloning the repository

The repository is reasonably large, and it's unlikely that you need the full history (~200 MB). If you are happy to wait for it all to download, run:

git clone

To clone only the most recent version, instead use a 'shallow clone':

git clone --depth=1

If you want to add in the full history later on, perhaps to run git blame or git log, run git fetch --depth=1000000

Building iD

  1. cd into the newly cloned project folder
  2. Run npm install
  3. Run npm run all
  4. Run npm start
  5. Open http://localhost:8080/ in a web browser

For guidance on building a packaged version, running tests, and contributing to development, see


iD is available under the ISC License. See the file for more details.

iD also bundles portions of the following open source software.

Thank you

Initial development of iD was made possible by a grant of the Knight Foundation.