Configuration Principles
This section should be treated as an educational walkthrough that highlights key components and features required to configure and deploy a custom platform. The topics serve as a starting point for understanding the underlying mechanisms of a fraction platform.
Once you’ve reviewed all components and understood how they work, we recommend referring to the RWA Fraction Market step-by-step guide. It serves as a foundational starting point, demonstrating how a developer can deploy a fraction platform in practice. However, to build your own platform, you’re expected to adapt and modify the codebase presented in the guide to suit your specific requirements and use case.
All facets within the Fraction Protocol are systematically classified into the following categories, each corresponding to a distinct functional domain:
Facet type | Description |
---|---|
Skeletons | Skeleton facets provide the core user-facing functionalities required by any type of fraction platform, including creating fractions, enabling purchases, receiving collected funds, facilitating buybacks, and retrieving both principal and interest. |
Internal Facets | Internal facets represent the foundational components of each Skeleton facet, decomposing core functionality into modular, implementation-specific units. These facets must be properly initialized, as Skeleton functionality depends on their correct configuration. |
Subskeletons | SubSkeletons provide optional, additional user-facing functionalities that may not be required by all fraction platforms. These include advanced operations such as force asset unlock, margin calls, return of user funds, return of unsold fractions, retrieval of vested assets, and mechanisms for vesting or fraction recovery. |
SubInternal Facets | SubInternal facets serve as the foundational components of each SubSkeleton facet, decomposing their functionality into modular, implementation-specific units. These facets must be properly initialized, as SubSkeleton capabilities depend on their correct configuration. |
Generic | Enable the access control layer, state tracking and state transitions, fraction pricing control, funding packet configuration functionality. You must include one of each type of generic facet in your diamond proxy. |
Connectors | Define the interference and destination states that govern when a connector triggers state transitions and their target states across all platform campaigns. These terms apply specifically to connectors and do not imply individual campaigns have separate states; rather, they represent conditions and outcomes managed globally by the connector. |
By selecting appropriate implementations from the aforementioned facet types, developers can construct and configure the necessary functionality for their platform. The flexibility of facet selection is only limited by the type of the selected facets, meaning you cannot mix facets that provide overlapping functionality.
For instance, you cannot have both SingleStateReceiveFacet and MultipleStateReceiveFacet at the platform level.
Note
For practical details on facet selection and the platform deployment process, refer to the RWA Fraction Market guide.
In the following chapters, you’ll explore the different categories of facets within the protocol: Skeletons, Internals SubSkeletons, SubInternals, Generic, and Connectors — each serving a distinct role in the platform's architecture.