Skip to content

Commit aab6f48

Browse files
committed
[fix] Updated blog
1 parent da6b057 commit aab6f48

File tree

2 files changed

+33
-24
lines changed

2 files changed

+33
-24
lines changed

content/blog/gsoc-25-improve-openwisp-general-map-indoor-mobile-linkable-urls.rst

Lines changed: 33 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,7 @@ GSoC 2025: Improve OpenWISP General Map: Indoor, Mobile, Linkable URLs
33

44
:date: 2025-09-14
55
:author: Deepanshu Sahu
6-
:tags: gsoc, openwisp, python, django, javascript, netjsongraph.js,
7-
leaflet, echarts, maps, new-features
6+
:tags: gsoc, netjsongraph.js, monitoring, new-feature
87
:category: gsoc
98
:lang: en
109
:image_url: https://openwisp.org/images/blog/gsoc25/improve-openwisp-general-map-indoor-mobile-linkable-urls/gsoc-25-improve-openwisp-general-map-indoor-mobile-linkable-urls.png
@@ -34,24 +33,14 @@ About the Project
3433
The project focused on improving the OpenWISP general map by adding new
3534
features such as indoor floor plan integration, and linkable map URLs and
3635
real-time mobile device tracking. These enhancements are aimed at making
37-
the platform more accessible and useful for network administrators and
38-
users alike, helping them navigate complex networks, monitor devices, and
39-
troubleshoot issues more efficiently.
36+
the platform more accessible and useful for network administrators,
37+
helping them navigate complex networks, monitor devices, and troubleshoot
38+
issues more efficiently.
4039

4140
While the journey presented deep technical challenges and learning
4241
opportunities, it also allowed me to collaborate with a vibrant community
4342
and contribute to an open-source project that impacts users globally.
4443

45-
For more details, you can visit the documentation pages below (links will
46-
be updated once the project is completed):
47-
48-
- `Indoor Floor Plan Integration
49-
<https://github.com/openwisp/openwisp-monitoring/issues/564>`_
50-
- `Linkable Map URLs
51-
<https://github.com/openwisp/netjsongraph.js/issues/238>`_
52-
- `Real-Time Mobile Device Tracking
53-
<https://github.com/openwisp/openwisp-monitoring/issues/563>`_
54-
5544
Building the General Map Enhancements
5645
-------------------------------------
5746

@@ -63,6 +52,9 @@ improvements support sharing URLs for specific views and implementing
6352
real-time location updates for mobile devices to enhance monitoring and
6453
navigation.
6554

55+
.. image:: {static}/images/blog/gsoc25/improve-openwisp-general-map-indoor-mobile-linkable-urls/before-after-ui-view.png
56+
:alt: Improve DashBoard Map UI in OpenWISP
57+
6658
Features Implemented
6759
--------------------
6860

@@ -90,15 +82,15 @@ Shareable URLs
9082
.. image:: {static}/images/blog/gsoc25/improve-openwisp-general-map-indoor-mobile-linkable-urls/share-url.gif
9183
:alt: Shareable URLs Feature in OpenWISP
9284

93-
For the shareable URLs, I introduced a new configuration option called
94-
urlFragments in netjsongraph.js, which is disabled by default but can be
95-
enabled when required. Once enabled, clicking on a node updates the URL
96-
with relevant parameters such as node ID, graph ID, and zoom level if
97-
applicable. The logic is designed to be standardized and extendable,
98-
making it possible to apply this functionality across multiple
99-
maps—specifically, both the geographic map and the indoor map. This allows
100-
users to share or bookmark specific views, with the map loading the state
101-
from the URL fragments.
85+
I added a new feature in netjsongraph.js called urlFragments, which is
86+
disabled by default and can be enabled when needed. With this feature,
87+
every time a user clicks on a node or link in the map, the URL is updated
88+
with parameters like graph ID, node ID, and zoom level. This makes it easy
89+
to create shareable URLs that anyone can use to open the map directly to
90+
the selected node or view. The logic is designed to be standardized and
91+
extendable, so it can be applied across multiple maps, such as the
92+
geographic and indoor maps. In the future, this could become a default
93+
option, but for now, it’s available as an opt-in feature.
10294

10395
Real Time Device Location
10496
~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -115,6 +107,16 @@ We are maintaining the ``gsoc25-map`` branch as parent branch for all the
115107
General map features. Once all the PRs are merged and features are tested
116108
and validated, we can proceed with releasing these along with OpenWISP 26.
117109

110+
You can follow the development process and explore the implementation
111+
details in the following pull requests:
112+
113+
- `Indoor Floor Plan Integration
114+
<https://github.com/openwisp/openwisp-monitoring/pull/688>`_
115+
- `Linkable Map URLs
116+
<https://github.com/openwisp/openwisp-monitoring/pull/703>`_
117+
- `Real-Time Mobile Device Tracking
118+
<https://github.com/openwisp/openwisp-monitoring/issues/563>`_
119+
118120
My Experience
119121
-------------
120122

@@ -134,6 +136,13 @@ and handle dynamic visualization using netjsongraph. The process of
134136
creating API endpoints, refining interactions, and integrating feedback
135137
helped me better understand best practices in software development.
136138

139+
Some of the toughest challenges I faced were managing conflicts between
140+
overlapping Coordinate Reference Systems (CRS) and designing the
141+
bookmarkable URL feature. These problems pushed me to explore and
142+
understand the inner workings of libraries like Leaflet.js and
143+
netjsongraph.js more deeply, expanding my knowledge of mapping tools and
144+
data handling.
145+
137146
Although the shareable URLs feature has been implemented and works well,
138147
refining its performance and ensuring smooth integration across multiple
139148
views presented new learning opportunities. The real-time mobile device
560 KB
Loading

0 commit comments

Comments
 (0)