How it works
A modular contract is composed of two types of contracts:
- Core Contract: the foundational API to be customized by installing modules
- Module Contract: implement a set of functionality to be enabled on a Core Contract upon installation
As an analogy, think of a robot in which the torso is the Core with available sockets for attaching modules.

The torso has a particular shape and exposes sockets at fixed places, determining how modules will be attached. Similarly, a Core smart contract has a fixed API determining which modules are compatible with installation.
The Modules, e.g., a leg, arm, head, etc., give the robot (i.e., the modular contract) various capabilities.