How it works
A modular contract is composed of two types of contracts:
- Core Contract: the foundational API to be customized by installing extensions
- Extension 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 extensions.
The torso has a particular shape and exposes sockets at fixed places, determining how extensions will be attached. Similarly, a Core smart contract has a fixed API determining which extensions are compatible with installation.
The Extensions, e.g., a leg, arm, head, etc., give the robot (i.e., the modular contract) various capabilities.