<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/">
    <channel>
        <title>IO Cheese Cloud - Maps Documentation Blog</title>
        <link>https://helpdocs.iocheese.com/blog</link>
        <description>IO Cheese Cloud - Maps Documentation Blog</description>
        <lastBuildDate>Thu, 20 Aug 2026 00:00:00 GMT</lastBuildDate>
        <docs>https://validator.w3.org/feed/docs/rss2.html</docs>
        <generator>https://github.com/jpmonette/feed</generator>
        <language>en</language>
        <item>
            <title><![CDATA[Securing Geospatial APIs: Map Access Keys vs OAuth 2.0]]></title>
            <link>https://helpdocs.iocheese.com/blog/securing-map-endpoints-oauth</link>
            <guid>https://helpdocs.iocheese.com/blog/securing-map-endpoints-oauth</guid>
            <pubDate>Thu, 20 Aug 2026 00:00:00 GMT</pubDate>
            <description><![CDATA[Modern applications often need to access map tiles, styles, geocoding services, and other geospatial APIs. Because these APIs can generate significant traffic and usage costs, authentication is an important part of the architecture.]]></description>
            <content:encoded><![CDATA[<p>Modern applications often need to access map tiles, styles, geocoding services, and other geospatial APIs. Because these APIs can generate significant traffic and usage costs, authentication is an important part of the architecture.</p>
<p>In this Proof of Concept (POC), we explore two authentication approaches supported by IOCheese Cloud:</p>
<ul>
<li class=""><strong>Map Access Keys</strong> — designed for client-side map applications.</li>
<li class=""><strong>OAuth 2.0 Client Credentials</strong> — designed for server-to-server API access.</li>
</ul>
<p>This guide explains the intended use case for each approach and provides basic implementation examples.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="authentication-overview">Authentication Overview<a href="https://helpdocs.iocheese.com/blog/securing-map-endpoints-oauth#authentication-overview" class="hash-link" aria-label="Direct link to Authentication Overview" title="Direct link to Authentication Overview" translate="no">​</a></h2>
<p>The two authentication mechanisms solve different problems.</p>
<table><thead><tr><th>Authentication Method</th><th>Recommended Use Case</th><th>Credential Type</th><th>Lifetime</th></tr></thead><tbody><tr><td><strong>Map Access Key</strong></td><td>Web maps, MapLibre GL JS, client-side applications</td><td>Publishable map key</td><td>Long-lived / revocable</td></tr><tr><td><strong>OAuth 2.0</strong></td><td>Backend services, workers, automation and API integrations</td><td>Client ID + Client Secret</td><td>Short-lived access token</td></tr></tbody></table>
<p>The key distinction is:</p>
<blockquote>
<p><strong>Map Access Keys are intended to identify and control access from client-side map applications, while OAuth 2.0 is intended for authenticated server-to-server communication.</strong></p>
</blockquote>
<hr>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="1-client-side-applications-map-access-keys">1. Client-Side Applications: Map Access Keys<a href="https://helpdocs.iocheese.com/blog/securing-map-endpoints-oauth#1-client-side-applications-map-access-keys" class="hash-link" aria-label="Direct link to 1. Client-Side Applications: Map Access Keys" title="Direct link to 1. Client-Side Applications: Map Access Keys" translate="no">​</a></h2>
<p>When a map is rendered directly in a user's browser, the authentication credential will eventually be visible in the browser's network requests.</p>
<p>For this reason, a client-side map credential should <strong>not be treated like a server-side secret</strong>.</p>
<p>Instead, use a Map Access Key that is specifically designed for map access and can be revoked or restricted according to your IOCheese configuration.</p>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="example-with-maplibre-gl-js">Example with MapLibre GL JS<a href="https://helpdocs.iocheese.com/blog/securing-map-endpoints-oauth#example-with-maplibre-gl-js" class="hash-link" aria-label="Direct link to Example with MapLibre GL JS" title="Direct link to Example with MapLibre GL JS" translate="no">​</a></h3>
<div class="language-javascript codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-javascript codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token keyword" style="color:#00009f">const</span><span class="token plain"> map </span><span class="token operator" style="color:#393A34">=</span><span class="token plain"> </span><span class="token keyword" style="color:#00009f">new</span><span class="token plain"> </span><span class="token class-name">maplibregl</span><span class="token class-name punctuation" style="color:#393A34">.</span><span class="token class-name">Map</span><span class="token punctuation" style="color:#393A34">(</span><span class="token punctuation" style="color:#393A34">{</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">  </span><span class="token literal-property property" style="color:#36acaa">container</span><span class="token operator" style="color:#393A34">:</span><span class="token plain"> </span><span class="token string" style="color:#e3116c">'map'</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">  </span><span class="token literal-property property" style="color:#36acaa">style</span><span class="token operator" style="color:#393A34">:</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">    </span><span class="token string" style="color:#e3116c">'https://api.iocheese.com/v1/map/styles/default/style.json?key=xxxxxxxxxxxxxxxxxx'</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">  </span><span class="token literal-property property" style="color:#36acaa">center</span><span class="token operator" style="color:#393A34">:</span><span class="token plain"> </span><span class="token punctuation" style="color:#393A34">[</span><span class="token number" style="color:#36acaa">78.9629</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> </span><span class="token number" style="color:#36acaa">22.5937</span><span class="token punctuation" style="color:#393A34">]</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">  </span><span class="token literal-property property" style="color:#36acaa">zoom</span><span class="token operator" style="color:#393A34">:</span><span class="token plain"> </span><span class="token number" style="color:#36acaa">4</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">  </span><span class="token literal-property property" style="color:#36acaa">minZoom</span><span class="token operator" style="color:#393A34">:</span><span class="token plain"> </span><span class="token number" style="color:#36acaa">3</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">  </span><span class="token literal-property property" style="color:#36acaa">maxZoom</span><span class="token operator" style="color:#393A34">:</span><span class="token plain"> </span><span class="token number" style="color:#36acaa">19</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"></span><span class="token punctuation" style="color:#393A34">}</span><span class="token punctuation" style="color:#393A34">)</span><span class="token punctuation" style="color:#393A34">;</span><br></div></code></pre></div></div>
<hr>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="2-server-to-server-workflows-use-oauth-20-flow">2. Server-to-Server Workflows: Use OAuth 2.0 Flow<a href="https://helpdocs.iocheese.com/blog/securing-map-endpoints-oauth#2-server-to-server-workflows-use-oauth-20-flow" class="hash-link" aria-label="Direct link to 2. Server-to-Server Workflows: Use OAuth 2.0 Flow" title="Direct link to 2. Server-to-Server Workflows: Use OAuth 2.0 Flow" translate="no">​</a></h2>
<p>For backend workers, data ingestion pipelines, or batch tile downloads, exchange your <code>client_id</code> and <code>client_secret</code> for short-lived JWT tokens:</p>
<div class="language-bash codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-bash codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token function" style="color:#d73a49">curl</span><span class="token plain"> </span><span class="token parameter variable" style="color:#36acaa">-X</span><span class="token plain"> POST https://api.iocheese.com/oauth/token </span><span class="token punctuation" style="color:#393A34">\</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">  </span><span class="token parameter variable" style="color:#36acaa">-H</span><span class="token plain"> </span><span class="token string" style="color:#e3116c">"Content-Type: application/json"</span><span class="token plain"> </span><span class="token punctuation" style="color:#393A34">\</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">  </span><span class="token parameter variable" style="color:#36acaa">-d</span><span class="token plain"> </span><span class="token string" style="color:#e3116c">'{</span><br></div><div class="token-line" style="color:#393A34"><span class="token string" style="color:#e3116c">    "client_id": "YOUR_CLIENT_ID",</span><br></div><div class="token-line" style="color:#393A34"><span class="token string" style="color:#e3116c">    "client_secret": "YOUR_CLIENT_SECRET",</span><br></div><div class="token-line" style="color:#393A34"><span class="token string" style="color:#e3116c">    "grant_type": "client_credentials"</span><br></div><div class="token-line" style="color:#393A34"><span class="token string" style="color:#e3116c">  }'</span><br></div></code></pre></div></div>
<p>Response:</p>
<div class="language-json codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-json codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token punctuation" style="color:#393A34">{</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">  </span><span class="token property" style="color:#36acaa">"access_token"</span><span class="token operator" style="color:#393A34">:</span><span class="token plain"> </span><span class="token string" style="color:#e3116c">"eyJhbGciOiJIUzI1NiIsInR5cCI6..."</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">  </span><span class="token property" style="color:#36acaa">"token_type"</span><span class="token operator" style="color:#393A34">:</span><span class="token plain"> </span><span class="token string" style="color:#e3116c">"Bearer"</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">  </span><span class="token property" style="color:#36acaa">"expires_in"</span><span class="token operator" style="color:#393A34">:</span><span class="token plain"> </span><span class="token number" style="color:#36acaa">3600</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"></span><span class="token punctuation" style="color:#393A34">}</span><br></div></code></pre></div></div>
<p>Use the received <code>access_token</code> in subsequent API requests via the <code>Authorization: Bearer &lt;token&gt;</code> header.</p>
<hr>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="summary--resources">Summary &amp; Resources<a href="https://helpdocs.iocheese.com/blog/securing-map-endpoints-oauth#summary--resources" class="hash-link" aria-label="Direct link to Summary &amp; Resources" title="Direct link to Summary &amp; Resources" translate="no">​</a></h2>
<ul>
<li class="">Use <strong>Map Access Keys</strong> for client-side map rendering.</li>
<li class="">Use <strong>OAuth 2.0</strong> for server-side endpoints and management APIs.</li>
</ul>
<p>For detailed instructions and code snippets in Node.js, Python, and C#, read our <a class="" href="https://helpdocs.iocheese.com/authentication/overview">Authentication Overview</a> and <a class="" href="https://helpdocs.iocheese.com/authentication/oauth-authentication">OAuth Authentication Guide</a>.</p>]]></content:encoded>
            <category>security</category>
            <category>authentication</category>
            <category>oauth</category>
            <category>maps</category>
            <category>best-practices</category>
        </item>
        <item>
            <title><![CDATA[5 Tips for Optimizing MapLibre GL JS Performance]]></title>
            <link>https://helpdocs.iocheese.com/blog/optimizing-maplibre-performance</link>
            <guid>https://helpdocs.iocheese.com/blog/optimizing-maplibre-performance</guid>
            <pubDate>Tue, 18 Aug 2026 00:00:00 GMT</pubDate>
            <description><![CDATA[Building a smooth and responsive web map becomes more challenging as the number of features, layers, and data sources increases.]]></description>
            <content:encoded><![CDATA[<p>Building a smooth and responsive web map becomes more challenging as the number of features, layers, and data sources increases.</p>
<p>When working with <strong>MapLibre GL JS</strong> and vector or GeoJSON data, a few architectural and rendering decisions can have a significant impact on performance.</p>
<p>In this guide, we cover <strong>5 practical techniques</strong> for improving MapLibre GL JS performance in web applications.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="1-use-clustering-for-large-point-datasets">1. Use Clustering for Large Point Datasets<a href="https://helpdocs.iocheese.com/blog/optimizing-maplibre-performance#1-use-clustering-for-large-point-datasets" class="hash-link" aria-label="Direct link to 1. Use Clustering for Large Point Datasets" title="Direct link to 1. Use Clustering for Large Point Datasets" translate="no">​</a></h2>
<p>Rendering thousands of individual points can quickly become expensive, especially when using HTML-based markers.</p>
<p>For large point datasets, use MapLibre's built-in GeoJSON clustering:</p>
<div class="language-javascript codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-javascript codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token plain">map</span><span class="token punctuation" style="color:#393A34">.</span><span class="token function" style="color:#d73a49">addSource</span><span class="token punctuation" style="color:#393A34">(</span><span class="token string" style="color:#e3116c">'fleet-vehicles'</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> </span><span class="token punctuation" style="color:#393A34">{</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">  </span><span class="token literal-property property" style="color:#36acaa">type</span><span class="token operator" style="color:#393A34">:</span><span class="token plain"> </span><span class="token string" style="color:#e3116c">'geojson'</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">  </span><span class="token literal-property property" style="color:#36acaa">data</span><span class="token operator" style="color:#393A34">:</span><span class="token plain"> </span><span class="token string" style="color:#e3116c">'https://api.iocheese.com/v1/datasets/fleet.geojson'</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">  </span><span class="token literal-property property" style="color:#36acaa">cluster</span><span class="token operator" style="color:#393A34">:</span><span class="token plain"> </span><span class="token boolean" style="color:#36acaa">true</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">  </span><span class="token literal-property property" style="color:#36acaa">clusterMaxZoom</span><span class="token operator" style="color:#393A34">:</span><span class="token plain"> </span><span class="token number" style="color:#36acaa">14</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">  </span><span class="token literal-property property" style="color:#36acaa">clusterRadius</span><span class="token operator" style="color:#393A34">:</span><span class="token plain"> </span><span class="token number" style="color:#36acaa">50</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"></span><span class="token punctuation" style="color:#393A34">}</span><span class="token punctuation" style="color:#393A34">)</span><span class="token punctuation" style="color:#393A34">;</span><br></div></code></pre></div></div>]]></content:encoded>
            <category>maplibre</category>
            <category>performance</category>
            <category>tutorial</category>
            <category>web-development</category>
        </item>
        <item>
            <title><![CDATA[Announcing IOCheese Cloud Vector Map Tiles & Global CDN]]></title>
            <link>https://helpdocs.iocheese.com/blog/announcing-vector-tile-service</link>
            <guid>https://helpdocs.iocheese.com/blog/announcing-vector-tile-service</guid>
            <pubDate>Sat, 15 Aug 2026 00:00:00 GMT</pubDate>
            <description><![CDATA[We are thrilled to announce the official release of IOCheese Cloud Vector Map Tiles & Global CDN, delivering high-performance, customizable, and sub-50ms latency vector maps for enterprise applications worldwide.]]></description>
            <content:encoded><![CDATA[<p>We are thrilled to announce the official release of <strong>IOCheese Cloud Vector Map Tiles &amp; Global CDN</strong>, delivering high-performance, customizable, and sub-50ms latency vector maps for enterprise applications worldwide.</p>
<p>Whether you're building logistics dashboards, real estate locators, or full-scale geospatial analytics platforms, IOCheese Maps provides the foundation for smooth 60fps rendering across desktop and mobile browsers.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="why-vector-tiles">Why Vector Tiles?<a href="https://helpdocs.iocheese.com/blog/announcing-vector-tile-service#why-vector-tiles" class="hash-link" aria-label="Direct link to Why Vector Tiles?" title="Direct link to Why Vector Tiles?" translate="no">​</a></h2>
<p>Traditional raster map tiles pre-render static bitmap images on servers, resulting in heavy bandwidth consumption and rigid styling. Vector map tiles package raw geometric data (points, lines, polygons, and metadata) in lightweight Protocol Buffers (PBF/MVT), allowing the client browser to style and render dynamic vector graphics on the GPU using WebGL / WebGPU.</p>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="key-benefits">Key Benefits:<a href="https://helpdocs.iocheese.com/blog/announcing-vector-tile-service#key-benefits" class="hash-link" aria-label="Direct link to Key Benefits:" title="Direct link to Key Benefits:" translate="no">​</a></h3>
<ul>
<li class=""><strong>Ultra-Fast Global Edge Caching:</strong> Tiles are distributed via Anycast CDN nodes across North America, Europe, and Asia-Pacific.</li>
<li class=""><strong>Dynamic Styling at Runtime:</strong> Switch between Light, Dark, Satellite-hybrid, or custom brand themes without fetching new map data.</li>
<li class=""><strong>Crisp High-DPI Displays:</strong> Vector graphics stay razor sharp on Retina and 4K screens at any zoom level.</li>
<li class=""><strong>Fraction of the Bandwidth:</strong> Typical tile payloads are under 30KB, saving data costs and accelerating initial map load.</li>
</ul>
<hr>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="quick-example-with-maplibre-gl-js">Quick Example with MapLibre GL JS<a href="https://helpdocs.iocheese.com/blog/announcing-vector-tile-service#quick-example-with-maplibre-gl-js" class="hash-link" aria-label="Direct link to Quick Example with MapLibre GL JS" title="Direct link to Quick Example with MapLibre GL JS" translate="no">​</a></h2>
<p>Integrating IOCheese Vector Tiles into any web project takes just a few lines of code:</p>
<div class="language-javascript codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-javascript codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token keyword" style="color:#00009f">import</span><span class="token plain"> maplibregl </span><span class="token keyword" style="color:#00009f">from</span><span class="token plain"> </span><span class="token string" style="color:#e3116c">'maplibre-gl'</span><span class="token punctuation" style="color:#393A34">;</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"></span><span class="token keyword" style="color:#00009f">import</span><span class="token plain"> </span><span class="token string" style="color:#e3116c">'maplibre-gl/dist/maplibre-gl.css'</span><span class="token punctuation" style="color:#393A34">;</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"></span><span class="token keyword" style="color:#00009f">const</span><span class="token plain"> map </span><span class="token operator" style="color:#393A34">=</span><span class="token plain"> </span><span class="token keyword" style="color:#00009f">new</span><span class="token plain"> </span><span class="token class-name">maplibregl</span><span class="token class-name punctuation" style="color:#393A34">.</span><span class="token class-name">Map</span><span class="token punctuation" style="color:#393A34">(</span><span class="token punctuation" style="color:#393A34">{</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">  </span><span class="token literal-property property" style="color:#36acaa">container</span><span class="token operator" style="color:#393A34">:</span><span class="token plain"> </span><span class="token string" style="color:#e3116c">'map'</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">  </span><span class="token literal-property property" style="color:#36acaa">style</span><span class="token operator" style="color:#393A34">:</span><span class="token plain"> </span><span class="token string" style="color:#e3116c">'https://api.iocheese.com/v1/map/styles/default/style.json?key=YOUR_MAP_ACCESS_KEY'</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">  </span><span class="token literal-property property" style="color:#36acaa">center</span><span class="token operator" style="color:#393A34">:</span><span class="token plain"> </span><span class="token punctuation" style="color:#393A34">[</span><span class="token number" style="color:#36acaa">78.9629</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> </span><span class="token number" style="color:#36acaa">20.5937</span><span class="token punctuation" style="color:#393A34">]</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> </span><span class="token comment" style="color:#999988;font-style:italic">// Centered over India</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">  </span><span class="token literal-property property" style="color:#36acaa">zoom</span><span class="token operator" style="color:#393A34">:</span><span class="token plain"> </span><span class="token number" style="color:#36acaa">5</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"></span><span class="token punctuation" style="color:#393A34">}</span><span class="token punctuation" style="color:#393A34">)</span><span class="token punctuation" style="color:#393A34">;</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"></span><span class="token comment" style="color:#999988;font-style:italic">// Add standard navigation controls</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">map</span><span class="token punctuation" style="color:#393A34">.</span><span class="token function" style="color:#d73a49">addControl</span><span class="token punctuation" style="color:#393A34">(</span><span class="token keyword" style="color:#00009f">new</span><span class="token plain"> </span><span class="token class-name">maplibregl</span><span class="token class-name punctuation" style="color:#393A34">.</span><span class="token class-name">NavigationControl</span><span class="token punctuation" style="color:#393A34">(</span><span class="token punctuation" style="color:#393A34">)</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> </span><span class="token string" style="color:#e3116c">'top-right'</span><span class="token punctuation" style="color:#393A34">)</span><span class="token punctuation" style="color:#393A34">;</span><br></div></code></pre></div></div>
<hr>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="whats-next">What's Next?<a href="https://helpdocs.iocheese.com/blog/announcing-vector-tile-service#whats-next" class="hash-link" aria-label="Direct link to What's Next?" title="Direct link to What's Next?" translate="no">​</a></h2>
<p>Over the coming months, we will be rolling out:</p>
<ol>
<li class=""><strong>Interactive Style Studio:</strong> A web-based visual editor to customize colors, fonts, and layer visibility with one-click export.</li>
<li class=""><strong>Turn-by-Turn Routing &amp; Directions API:</strong> High-efficiency pathfinding and matrix distance calculations.</li>
<li class=""><strong>Geocoding &amp; Autocomplete:</strong> Fast place search and address reverse-geocoding.</li>
</ol>
<p>Check out our <a class="" href="https://helpdocs.iocheese.com/quickstart">Quickstart Guide</a> or explore the <a class="" href="https://helpdocs.iocheese.com/api-reference/styles-and-tiles">API Reference</a> to get started!</p>]]></content:encoded>
            <category>announcement</category>
            <category>vector-tiles</category>
            <category>maps</category>
            <category>release</category>
        </item>
    </channel>
</rss>