๐Ÿ”“ Open Source

Both Dual Maps 3D and Dual Free Maps are open source and available on GitHub. You are free to fork, self-host, embed, or build on them under the MIT licence.

GitHub Repositories

๐ŸŒ

Dual Maps 3D

Three-panel map viewer combining a Google 2D road map, Google Street View, and a CesiumJS photorealistic 3D Earth โ€” all synchronised in real time. Requires a Google Maps API key.

  • MapLibre GL ยท CesiumJS ยท Google Maps JS API
  • Google Photorealistic 3D Tiles
  • URL parameter driven โ€” fully shareable links
  • MIT licence
๐Ÿงญ

Dual Free Maps

Three-panel map viewer using MapLibre GL road maps, ESRI satellite imagery, and Mapillary street-level photography. No Google API key or account required.

  • MapLibre GL ยท OpenFreeMap ยท ESRI ยท Mapillary
  • Multiple road map styles
  • URL parameter driven โ€” fully shareable links
  • MIT licence

Quick Start

Both projects are standalone static HTML and JavaScript โ€” no build step, no package manager, no server-side code required. Getting up and running takes just a few minutes.

  1. 1
    Clone or download the repository

    Use git clone or download the ZIP from GitHub and unzip it locally.

  2. 2
    Serve the files from a web server

    The pages must be served over HTTP or HTTPS โ€” they cannot be opened directly as local files due to browser security restrictions on JavaScript modules and tile requests. Any static server works: Live Server in VS Code, IIS, nginx, GitHub Pages, or npx serve . in the project folder.

  3. 3
    For Dual Maps 3D โ€” add your Google Maps API key

    Open dem1.htm and replace YOUR_KEY in the Google Maps script tag with your own key, or pass it as a URL parameter: ?key=YOUR_KEY. Enable the Maps JavaScript API and the Map Tiles API in your Google Cloud project. Dual Free Maps requires no key.

  4. 4
    Open the page in a browser

    Navigate to dem1.htm (Dual Maps 3D) or dmf.htm (Dual Free Maps). Both pages accept URL parameters to set the initial location, panels, and view โ€” see the API Reference links above for the full parameter list.

Support & Donate

Dual Maps is a free project built and maintained by Map Channels. If you find it useful, consider supporting its continued development.

๐Ÿ›

Report an Issue

Found a bug or have a feature request? Open an issue on the relevant GitHub repository.

โค๏ธ

Donate to Support

These projects are free to use and open source. If they have saved you time or added value to your work, a small donation helps keep the servers running and new features coming.

โค๏ธ Donate via Map Channels