During the late 2000’s there were multiple interactive map libraries developed that required developers to choose up-front which to integrate into their application. As each library was rapidly adding features and basemap data it was common where a developer needed different map libraries across their application. And as licensing was changing it could be expensive for a product to change out of a library.
Therefore, building an app with Mapstraction allowed developers to write their code once and then dynamically switch between map libraries. Some products allowed users to change map libraries depending on their preference for local data, map cartography, and UI interaction.
Mapstraction included an interactive API Sandbox and documentation using some tools developed by Google.
The project is no longer maintained, but you can check it out on the Github mapstraction/mxn project repository. The project was started by Tom Carden and Steve Coast with encouragement from Mikel Maron. Over the years there were at least 25 contributors.