Convert Figma logo to code with AI

openstreetmap logoiD

🆔 The easy-to-use OpenStreetMap editor in JavaScript.

3,338
1,200
3,338
1,260

Top Related Projects

Easy to use OpenStreetMap editor for Android

4,566

🗺️ MAPS.ME — Offline OpenStreetMap maps for iOS and Android

Quick Overview

iD is the default editor for OpenStreetMap, a free and editable map of the world. It's a browser-based, easy-to-use editor that allows users to contribute to and improve OpenStreetMap data directly from their web browsers. iD is designed to be simple and intuitive, making it accessible for both new and experienced mappers.

Pros

  • User-friendly interface, making it easy for newcomers to contribute to OpenStreetMap
  • Browser-based, requiring no software installation
  • Supports a wide range of mapping features and tags
  • Integrates well with OpenStreetMap's ecosystem and data structure

Cons

  • May lack some advanced features found in desktop editors like JOSM
  • Performance can be slower compared to native applications, especially for large areas or complex edits
  • Requires a stable internet connection for optimal use
  • Limited offline capabilities compared to desktop alternatives

Code Examples

As iD is primarily a web-based editor and not a code library, there are no specific code examples to provide. However, developers can contribute to the project or customize the editor for their own use.

Getting Started

To use iD as an end-user, simply visit OpenStreetMap's website and click "Edit" to start mapping. For developers interested in contributing or customizing iD:

  1. Clone the repository:

    git clone https://github.com/openstreetmap/iD.git
    
  2. Install dependencies:

    cd iD
    npm install
    
  3. Start the development server:

    npm start
    
  4. Open http://localhost:8080 in your browser to see the development version of iD.

For more detailed instructions and contribution guidelines, refer to the project's README and CONTRIBUTING files in the GitHub repository.

Competitor Comparisons

Easy to use OpenStreetMap editor for Android

Pros of StreetComplete

  • Focused on mobile use, making it easier for on-the-ground contributions
  • Gamified approach with quests, encouraging more user engagement
  • Simplified interface for non-technical users to contribute

Cons of StreetComplete

  • Limited to Android platform, reducing accessibility for iOS users
  • More constrained editing capabilities compared to iD's full-featured editor
  • Primarily designed for adding specific types of data, less flexible for general editing

Code Comparison

StreetComplete (Kotlin):

class QuestAnswerComponent(
    private val osmEditController: OsmEditController,
    private val questController: QuestController,
    private val soundFx: SoundFx
) {
    // Implementation details
}

iD (JavaScript):

export function osmEntity(attrs) {
    var entity = {};
    entity.tags = {};
    entity.id = attrs.id;
    // More entity properties and methods
    return entity;
}

StreetComplete uses Kotlin and focuses on mobile-specific components, while iD uses JavaScript and provides a more general-purpose entity structure for OpenStreetMap data manipulation.

4,566

🗺️ MAPS.ME — Offline OpenStreetMap maps for iOS and Android

Pros of OMIM

  • Offers offline mapping capabilities, allowing users to access maps without an internet connection
  • Provides a more comprehensive mapping solution, including navigation and search features
  • Supports multiple platforms, including iOS, Android, and desktop

Cons of OMIM

  • Larger codebase and more complex architecture, potentially making it harder to contribute or maintain
  • Less focused on editing OpenStreetMap data compared to iD
  • May have a steeper learning curve for new developers due to its broader scope

Code Comparison

iD (JavaScript):

context.enter = function(mode) {
    if (mode.id === context.mode().id) return;
    context.history().perform(function() {
        context.mode().exit();
        context.mode(mode);
    });
};

OMIM (C++):

void Framework::ShowPlacePage(place_page::Info const & info, place_page::SponsoredType sponsoredType)
{
  m_work.GetGuard();
  auto const & mwmInfo = info.GetID().m_mwmId.GetInfo();
  if (!mwmInfo)
    return;
  m_currentPlacePageInfo = info;
}

Convert Figma logo designs to code with AI

Visual Copilot

Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.

Try Visual Copilot

README

iD - friendly JavaScript editor for OpenStreetMap

build

Basics

  • 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, and Edge.
  • Data is rendered with d3.js.

Participate!

Come on in, the water's lovely. More help? Ping Martin Raifer/tyr_asd or bhousel on:

Installation

Follow the steps in the how to get started guide on how to install, build and run iD locally.

License

iD is available under the ISC License. See the LICENSE.md 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.