Sage Protocol features a modular architecture organized into a clearly defined set of smart contract packages. Each package provides essential functionality for building decentralized social applications that are transparent, secure, and economically aligned.

admin

Handles administrative roles, permissions, application management, and protocol configuration. It securely manages critical operations, such as app creation, royalty distribution, and type-based access controls.

analytics

Records and manages onchain analytics data, tracking user activity such as posts, interactions, and follows. This data structure helps determine user engagement levels and reward eligibility, enabling richer application experiences.

channel

Manages decentralized community spaces (“channels”), handling creation, memberships, moderation roles, analytics integration, and channel metadata (avatars, descriptions). Channels are created within specific apps but remain globally accessible, enabling seamless integration and reuse across the ecosystem.

post

Facilitates blockchain-native content creation and interactions, including posts, comments, likes, and associated engagement metrics. Posts are universally accessible across Sage, promoting content integration and cross-application remixing.

reward

Implements Sage’s reward logic using the Proof of Social Contribution (PoSC) model. It defines global action weights, calculates explicit rewards, and transparently distributes rewards based on validated user actions, providing clarity and consistency for developers.

shared

Offers common data structures and utility functions utilized by multiple protocol packages, including favorites, likes, memberships, moderation roles, and general operational logic. This simplifies development and ensures consistent user experiences across the protocol.

trust

Oversees the lifecycle management of Sage’s native $TRUST token, explicitly handling token minting, burning, and supply regulation. It directly integrates with the reward package, ensuring token issuance aligns transparently with validated user contributions.

user

Manages decentralized user identities, covering both private and public user data, social connections, analytics, and user-level interactions. Developers leverage this package to create identity-aware applications, securely managing user-controlled data and onchain social interactions.

utils

Provides foundational utility functions shared across multiple protocol packages, including tasks such as string handling, type checking, and input validation. Centralizing these utilities ensures secure, efficient, and consistent protocol operations.