Top Related Projects
Easy to use OpenStreetMap editor for Android
🗺️ 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:
-
Clone the repository:
git clone https://github.com/openstreetmap/iD.git
-
Install dependencies:
cd iD npm install
-
Start the development server:
npm start
-
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.
🗺️ 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 designs to code with AI
Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.
Try Visual CopilotREADME
iD - friendly JavaScript editor for OpenStreetMap
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!
- Read the project Code of Conduct and remember to be nice to one another.
- Read up on Contributing and the code style of iD.
- See open issues in the issue tracker if you're looking for something to do.
- Translate!
- Test a prerelease version of iD:
- Stable mirror of
release
branch: https://ideditor-release.netlify.app - Development mirror of
develop
branch + latest translations: https://ideditor.netlify.app
- Stable mirror of
Come on in, the water's lovely. More help? Ping Martin Raifer
/tyr_asd
or bhousel
on:
- OpenStreetMap US Slack (
#id
channel) - OpenStreetMap Discord (
#id
channel) - OpenStreetMap IRC (
irc.oftc.net
, in#osm-dev
) - OpenStreetMap
dev
mailing list
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.
- D3.js (BSD-3-Clause)
- CLDR (Unicode Consortium Terms of Use)
- editor-layer-index (CC-BY-SA 3.0)
- Font Awesome (CC-BY 4.0)
- Maki (CC0 1.0)
- Temaki (CC0 1.0)
- Röntgen icon set (CC-BY 4.0)
- Mapillary JS (MIT)
- iD Tagging Schema (ISC)
- name-suggestion-index (BSD-3-Clause)
- osm-community-index (ISC)
Thank you
Initial development of iD was made possible by a grant of the Knight Foundation.
Top Related Projects
Easy to use OpenStreetMap editor for Android
🗺️ MAPS.ME — Offline OpenStreetMap maps for iOS and Android
Convert designs to code with AI
Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.
Try Visual Copilot