mappls-api / mappls-web-maps

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Introduction

Easy To Integrate Maps & Location APIs & SDKs For Web & Mobile Applications.

Our APIs, SDKs, and live updating map data available for 200+ nations and territories give developer-friendly, easy-to-integrate plugins to add capabilities like intelligent search and routes on map, to your web or mobile applications.

Create your own Angular/React/Ionic/Cordova Based native app powered by Mappls Maps and deploy them to various platforms be it web or native mobile platforms.

Package name : mappls-web-maps

Sign up for Mappls

Not a mappls user yet? Sign up for an account here. Once you’re signed in, all you need to start building is a mappls key. You can create and manage your access tokens on your Mappls Account page.

API Usage

Your MapmyIndia Maps SDK usage needs a set of license keys (get them here ) and is governed by the API terms and conditions. As part of the terms and conditions, you cannot remove or hide the MapmyIndia logo and copyright information in your project. Please see branding guidelines on MapmyIndia website for more details. The allowed hits are described on the plans page. Note that your usage is shared between platforms, so the API hits you make from a web application, Android app or an iOS app all add up to your allowed daily limit.

Version History

Version Last Updated Author Remarks
3.0 05 April 2022 MapmyIndia API Team (MS) Initial Commit
3.0 02 December 2022 MapmyIndia API Team (PK) Document Update

Supported Technologies

  • Node.js
  • Angular
  • React JS
  • Cordova
  • Ionic

Supported Platforms

  • Web
  • Android
  • iOS

Getting Started

Components

Plugins

Installation

npm  i  mappls-web-maps

Import Package

  • Angular : Import mappls class from mappls-web-maps package i.e. app.component.ts ( or other component of your use case ) .

     import { mappls, mappls_plugin } from 'mappls-web-maps';
  • React JS : Import mappls class from "mappls-web-maps" package inside app.js ( or other component of your use case ).

    import { mappls, mappls_plugin } from  'mappls-web-maps'

Implementation

Loading a Map

  • Angular / Cordova / Ionic
import { Component, OnInit } from '@angular/core';
import { CommonModule } from '@angular/common';
import { mappls, mappls_plugin } from 'mappls-web-maps';
@Component({
  selector: 'app-root',
  standalone: true,
  imports: [CommonModule],
  template: `
  <div id="map" style="width: 100%; height: 97vh;">
  </div>
`,
})
export class AppComponent implements OnInit {
  mapobject:any
  mapplsClassObject:any= new mappls()
  mapplsPluginObject:any= new mappls_plugin()
  title = 'Map_angular';


  ngOnInit() {
    const loadObject = {
      map: true,
      layer: 'raster', // Optional Default Vector
      version: '3.0', // Optional, other version 3.5 also available with CSP headers
      libraries: ['airspacelayers'], // Optional for Polydraw and airspaceLayers
      plugins: ['direction'], // Optional for any plugins

    };

  this.mapplsClassObject.initialize(
    '---------------Token------------------',
    loadObject,
    () => {
      this.mapobject = this.mapplsClassObject.Map({
        id: 'map',
        properties: {
          center: [28.61, 77.23],
          zoomControl: true,
          location: true,
        },
      });
    }
    
  );
  }
}
  • React JS
import { mappls, mappls_plugin } from "mappls-web-maps";
import { useEffect, useRef, useState } from "react";

const mapplsClassObject = new mappls();
const mapplsPluginObject = new mappls_plugin();


const App = () => {
  const mapRef = useRef(null);
  const [isMapLoaded, setIsMapLoaded] = useState(false);

  const loadObject = { 
    map: true, 
    layer: 'raster', // Optional Default Vector
    version: '3.0', // // Optional, other version 3.5 also available with CSP headers
    libraries: ['polydraw'], //Optional for Polydraw and airspaceLayers
    plugins:['direction'] // Optional for All the plugins
};

  useEffect(() => {
    mapplsClassObject.initialize("--------Token-------", loadObject, () => {
      const newMap = mapplsClassObject.Map({
        id: "map",
        properties: {
          center: [28.633, 77.2194],
          zoom: 4,
        },
      });

      newMap.on("load", () => {
        setIsMapLoaded(true);
      });
      mapRef.current = newMap;
    });
    return () => {
      if (mapRef.current) {
        mapRef.current.remove();
      }
    };
  }, []);

  return (
    <div
      id="map"
      style={{ width: "100%", height: "99vh", display: "inline-block" }}
    >
      {isMapLoaded}
    </div>
  );
};

export default App;

That’s All !


For any queries and support, please contact:

Email us at apisupport@mappls.com

Support

Need support? contact us!





© Copyright 2023 CE Info Systems Ltd. All Rights Reserved.

About