Hello OpenStreetMap community! I’m Deeptanshu Sankhwar, a Master’s student in Computer Science, and I’m thrilled to be working with the iD Editor team this summer as part of Google Summer of Code 2025. My project focuses on modernizing how iD handles session state, an important step toward improving usability, reliability, and performance across browsers and devices.
The core idea is to replace the current localStorage
mechanism with IndexedDB
, a more robust solution for storing larger and more complex state data. I’ll also be introducing multi-tab synchronization using BroadcastChannel, ensuring that changes in one tab reflect seamlessly across others. To ensure long-term compatibility, I’ll be removing deprecated browser event dependencies such as unload
. These improvements aim to enhance the editing experience while laying the groundwork for future extensibility.
For the first milestone, I’ll be focusing on building a wrapper around IndexedDB that mimics the current localStorage
API to ease the migration process. This includes ensuring backward compatibility, benchmarking performance, and writing unit tests to validate behavior. I’ll also begin experimenting with tab state sharing using BroadcastChannel
, setting up a test environment to evaluate its integration with iD’s event-driven architecture. You can find the detailed plan here.
You can read more about the overall project in my full GSoC proposal. I’m excited to contribute and learn from the community. Feedback, suggestions, and collaboration are more than welcome as I get started.