๐ 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
Clone or download the repository
Use
git cloneor download the ZIP from GitHub and unzip it locally. - 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
For Dual Maps 3D โ add your Google Maps API key
Open
dem1.htmand replaceYOUR_KEYin 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
Open the page in a browser
Navigate to
dem1.htm(Dual Maps 3D) ordmf.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