J
JereCodes
Galleries
J
JereCodes
Galleries
Back to Blog

Exploring the Mappedin SDK for Indoor Navigation

Jere on August 25, 2025
•
3 min read
mappedin
indoor-navigation
indexeddb
supabase
museums

Indoor navigation is a fascinating challenge that combines mapping technology, user experience design, and real-world spatial understanding. The Mappedin SDK provides powerful tools for building indoor navigation experiences.

What is Mappedin?

Mappedin is a platform that specializes in indoor mapping and navigation. Unlike outdoor GPS which works great in open spaces, indoor environments need specialized solutions that can handle:

  • Multi-floor buildings
  • Complex room layouts
  • Real-time position tracking
  • Interactive wayfinding

The Museum Use Case

Museums present unique navigation challenges:

  • Large, complex layouts
  • Visitors want to track their journey
  • Educational content tied to locations
  • Need for wayfinding and information discovery

Developers can build museum applications using the Mappedin SDK, while mapmakers can create and manage indoor maps using the Mappedin Map Editor.

Technical Architecture

Core Technologies

Building with Mappedin involves several key technologies:

// Mappedin SDK integration
import { MappedinMap } from '@mappedin/react-sdk'
import { createMappedinClient } from '@mappedin/mappedin-js'

Data Storage Strategy

A typical indoor navigation app might implement a hybrid storage approach:

  1. IndexedDB for local data persistence
  2. Supabase for cloud sync and analytics
// IndexedDB stores
export const STORE_NAME = 'positions'
export const FLOOR_STORE = 'floorChanges'  
export const SESSION_STORE = 'session'
export const PIN_STORE = 'pins'

Position Tracking

An indoor navigation app can track user positions and floor changes:

export async function storePosition(db: IDBDatabase, position: GeolocationPosition) {
  const transaction = db.transaction([STORE_NAME], 'readwrite')
  const store = transaction.objectStore(STORE_NAME)
  const record = {
    timestamp: Date.now(),
    coords: {
      latitude: position.coords.latitude,
      longitude: position.coords.longitude,
      accuracy: position.coords.accuracy,
      // ... other coordinates
    }
  }
  store.add(record)
}

Key Features Implemented

1. Session Management

Each visit creates a unique session for tracking the user's journey through the museum.

2. Floor Change Detection

Track when users move between floors, crucial for multi-level museums.

3. Pin Dropping

Users can drop pins at interesting locations with notes and descriptions.

4. Data Export

All collected data can be exported as JSON or synced to Supabase for analysis.

5. File Upload

Users can attach photos and documents to specific locations.

Challenges and Solutions

Browser Geolocation Limitations

Indoor positioning with browser APIs is limited. The app combines:

  • Device GPS when available
  • Manual position confirmation
  • Floor-specific coordinate mapping

Data Persistence

Museums often have poor connectivity. An IndexedDB + Supabase approach ensures:

  • Offline functionality
  • Automatic sync when connected
  • No data loss

User Experience

Making indoor navigation intuitive required:

  • Clear visual indicators
  • Responsive map interactions
  • Accessible controls for all users

Real-World Applications

This system could be adapted for:

  • Museums - Visitor journey tracking and engagement
  • Hospitals - Patient and staff navigation
  • Shopping Centers - Customer behavior analytics
  • Corporate Offices - Employee space utilization
  • Universities - Campus navigation for students

Performance Considerations

Map Loading

Indoor maps can be large. Best practices include:

  • Progressive loading
  • Efficient caching strategies
  • Responsive image handling

Data Management

With continuous position tracking, data can grow quickly:

  • Intelligent sampling rates
  • Automatic cleanup of old sessions
  • Efficient storage schemas

Future Enhancements

Potential improvements for indoor navigation apps include:

  • Real-time collaborative features
  • Advanced analytics dashboard
  • Integration with museum content management
  • Augmented reality overlays
  • Voice-guided navigation

Technical Learnings

Working with the Mappedin SDK provides insights into:

  • Indoor coordinate systems differ significantly from outdoor GPS
  • User privacy is crucial when tracking positions
  • Offline-first design is essential for real-world applications
  • Good UX in navigation apps requires extensive testing in actual spaces

Resources

For developers looking to build indoor navigation applications:

  • Mappedin Developer Documentation - SDK guides and API reference
  • Mappedin Map Editor - Create and manage indoor maps

The Mappedin platform demonstrates patterns for:

  • SDK integration
  • Local data storage
  • Cloud synchronization
  • User session management

The intersection of mapping technology, user experience, and data collection creates opportunities for innovative applications that help people navigate and understand complex indoor spaces.

Building with indoor navigation technology reinforces how much potential there is in this field - we're still in the early days of what's possible!

Share Article

J

About Jere

Software developer passionate about indoor mapping, web technologies, and building useful tools.

GitHubTwitter/XYouTube