Microsites provides a site-within-a-site capability, using a plugin-based architecture.
How it works
Microsites are individual nodes which are specially enabled to provide their own context, menu, breadcrumb and other settings. When a node becomes microsite-enabled, it creates a menu, context and other components automatically.
Other nodes can be added to the microsite by ensuring they are within the scope of the Microsite context (for example, by setting their base bath to be a child of the microsite node).
The Microsites framework does all the heavy lifting, data storage and configuration setting for modules which implement its API. At its most basic, Microsites leverages Context and the Drupal Menu system to create a virtual site-within-a-site.
Modules can implement Microsites functionality by providing ctools plugin which extends the BasicMicrositesExtension class. See existing plugins for examples.
Plugin behaviour can also be triggered from anywhere in your code using the function microsites_trigger_callback(), which is documented in microsites.module.