logo
RNNaver Map

Development Milestones

Development roadmap and key milestones for Naver Map React Native library

Development Milestones

Marker Clustering System Implementation

Build a clustering system for efficient display of large numbers of markers.

Clustering Algorithm

Implement performance-optimized clustering algorithm

Cluster Marker Images

Dynamic cluster marker image generation and customization

Cluster Functions

Implement API functions for cluster manipulation

Performance Considerations

Memory usage and rendering performance optimization are key when handling large numbers of markers.

Develop a separate package that integrates various location-based services from Naver Cloud Platform beyond the Naver Map SDK.

Directions API

Route search and navigation functionality

Geocoding API

Address to coordinate conversion service

Reverse Geocoding

Coordinate to address conversion service

Additional Services

Other Naver Cloud Console APIs

Package Structure Plan

@react-native-naver-map/
├── core/                 # Basic map components (current package)
├── cloud-services/       # Naver Cloud API integration
└── utils/               # Common utilities

Each package will be modularized for independent installation and use.

Wrap REST API-based services with React Native-friendly Promise/async-await patterns:

import { NaverCloudServices } from '@react-native-naver-map/cloud-services';

// Directions API
const route = await NaverCloudServices.directions({
  start: { lat: 37.5665, lng: 126.9780 },
  goal: { lat: 37.5651, lng: 126.9895 },
  option: 'trafast'
});

// Geocoding API
const coordinates = await NaverCloudServices.geocoding({
  query: 'Seoul Jung-gu Sejong-daero 110'
});
  • Phased Release: Sequential development and deployment for each API
  • Version Compatibility: Ensure compatibility with core map library
  • Documentation: Provide detailed usage guides and examples for each API
  • Testing: Integration testing with actual Naver Cloud Platform APIs

Detailed API Plans

Directions API

Integrate route search and navigation functionality into React Native apps.

interface DirectionsOptions {
  start: Coordinate;
  goal: Coordinate;
  waypoints?: Coordinate[];
  option?: 'trafast' | 'tracomfort' | 'traoptimal';
  avoid?: ('toll' | 'ferry')[];
}

interface DirectionsResult {
  route: {
    trafast: RouteInfo[];
    tracomfort: RouteInfo[];
    traoptimal: RouteInfo[];
  };
}

Geocoding API

Service for converting addresses to coordinates.

interface GeocodingOptions {
  query: string;
  coordinate?: Coordinate; // Search center point
  filter?: string; // Search filter
}

interface GeocodingResult {
  addresses: Address[];
  meta: {
    totalCount: number;
    page: number;
    count: number;
  };
}

Reverse Geocoding

Service for converting coordinates to addresses.

interface ReverseGeocodingOptions {
  coords: Coordinate;
  output?: 'json' | 'xml';
  orders?: string;
}

interface ReverseGeocodingResult {
  results: AddressComponent[];
}

Additional Services

Other Naver Cloud Platform APIs planned for future addition:

  • Static Map API: Generate static map images
  • Places API: Place search and information lookup
  • Traffic API: Real-time traffic information

Technical Challenges

Performance Optimization

Memory efficiency and rendering performance optimization when processing large amounts of data

API Rate Limiting

Consider Naver Cloud Platform API request limits and cost optimization

Cross-Platform Consistency

Ensure consistency of functionality and performance between iOS and Android platforms

Contribution and Feedback

We plan to actively collect community feedback for each milestone to adjust our development direction. Please share your thoughts through GitHub Issues or Discussions.