# How it works?

The diagram effectively outlines the relationships and interactions between the different on-chain components of Subtopia system, focusing on the Registry Contract as the central entity deploying and managing Product Contracts, Creator Lockers, and User Lockers.

<figure><img src="/files/yfHRntStIaVctVDn2brO" alt=""><figcaption><p>Platform overview</p></figcaption></figure>

1. **Registry Contract (Main Entity)**: This contract is the central component of the system. Users interact with the Registry Contract to deploy Product Contracts. Arrows from the Registry Contract depict the creation of Product Contracts, Creator Lockers, and User Lockers.
2. **Product Contract (Integration)**: Once created, the Product Contract integrates with the user's project, website, or app. This integration is represented by an arrow pointing from the Product Contract to a user's project icon.
3. **Creator Locker (Revenue and Ownership Management)**: A Creator Locker interacts with multiple Product Contracts. It is responsible for storing revenue in an escrow, allowing creators to withdraw their earnings. Additionally, the Creator Locker serves as a lookup mechanism to determine which products a user owns. The diagram shows an instance of a Creator Locker interacting with 'N' number of Product Contracts.
4. **User Locker (Subscription Tracking and Management)**: The User Locker tracks active subscriptions of users and features a quick-edit UI, resembling a subscription view page seen in iOS devices. This component allows users to overview and manage their active subscriptions easily.

The diagram uses specific colors and styles to distinguish between different components and their functions:

* User's project/website/app is marked with a light blue color.
* Revenue Escrow is highlighted in light pink.
* Active Subscriptions and Subscription View Page are in light cyan and light red, respectively.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.subtopia.io/how-it-works.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
