> For the complete documentation index, see [llms.txt](https://plutolabs.gitbook.io/plutoframework/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://plutolabs.gitbook.io/plutoframework/vision.md).

# Vision

Substrate is a framework for creating your own blockchains. It is great, because you can reuse a lot of the existing FRAME pallets.

However, when it comes to UI, it is a different story. Each development team had to design their own UI components, their own apps from scratch. It was not cheap and it took them a lot of time.

> <mark style="color:yellow;">**PlutoFramework is a perfect companion to your Substrate-based blockchain.**</mark>

With PlutoFramework, each pallet has it's own corresponding component. These components can be reused across multiple chains. Or they can support multiple chains at once.

<figure><img src="/files/METKusIJJo1fGPjuJ27v" alt=""><figcaption><p>1 blockchain, 1 pallet, 1 component</p></figcaption></figure>

<figure><img src="/files/rzcl5ACdSbFXSHGfOOqt" alt=""><figcaption><p>1 blockchain, 1 pallet, multiple components</p></figcaption></figure>

<figure><img src="/files/69DZQR2gsPPLVzJIniRB" alt=""><figcaption><p>1 blockchain, multiple pallets, 1 component</p></figcaption></figure>

<figure><img src="/files/cUQ1RrUJ2l3THxOekpaP" alt=""><figcaption><p>Multiple blockchains, multiple pallets, 1 component</p></figcaption></figure>

Components serve variety of purposes and they might need data from multiple blockchains and pallets to combine them into one comprehensive information.

PlutoFramework is designed for these complex scenarios.

{% content-ref url="/pages/3jxPu4TaTYNOimw4nifE" %}
[UI Components](/plutoframework/make-your-application/ui-components.md)
{% endcontent-ref %}

{% content-ref url="/pages/uidtPTILTDvHQyV0uA3h" %}
[Register new Chain](/plutoframework/make-your-application/register-new-chain.md)
{% endcontent-ref %}

{% content-ref url="/pages/f0t6aSZJRgVdmmvNx25K" %}
[Create custom components](/plutoframework/make-your-application/create-custom-components.md)
{% endcontent-ref %}
