<p>The <a href="https://iohk.io/en/blog/posts/2021/10/25/new-certification-levels-for-smart-contracts-on-cardano/" rel="nofollow noreferrer">purpose of a dApp store</a> is for script <em>curation</em>, not script availability. Perhaps &quot;dApp Store&quot; is a bit of a misnomer, because software here isn't being sold in the traditional sense. Instead, it is being submitted to the open source community in a setting where professionals can audit/debug the code and report their findings to the community. This is imperative for decentralization because we can't expect everyone to have the level of expertise necessary to know whether the code they are using is sufficient for their purposes. By having trusted entities validate scripts and sign off on them allows us to outsource the code audit to an entity who has a reputation to maintain.</p>
<p>As far as <a href="https://docs.cardano.org/plutus/learn-about-plutus" rel="nofollow noreferrer">deploying the actual script</a>, the code is run on the client machine (your computer) and the hash of the operation is posted on chain. This is analogous to how simple transactions work - sending/receiving addresses are not stored on chain for each transaction, only the hashes of TX outputs are stored.</p>

CC BY-SA 4.0
2021-12-02T20:55:40.197Z
So how does the code get onto the users machine? It sounds like the code will originate from a centralized entity (SundaeSwap servers & SundaeSwap website ?) and then run on users browsers and interact with users wallet as need be? 

Have I got that right?
Reddspark
CC BY-SA 4.0
2021-12-03T08:26:31.543Z
@user1761806 yes, that is one of the ways. It really doesn't matter where the user gets the script from -- he could get it from a friend, a contract deployer, compile from source himself, fetch from ipfs.
andycandy
CC BY-SA 4.0
2021-12-02T13:18:16.020Z
2021-12-02T13:18:16.020Z
zhekson
<p>Consider this a follow up to this other question that someone else asked: <a href="https://cardano.stackexchange.com/questions/2274/where-is-stored-off-chain-code">Where is stored off-chain code?</a></p>
<p>My question: Without a dapp store how does one deploy a Plutus script in a fully Decentralized manner? Would you have to do what SundaeSwap did and get some node operators to run the off chain code for you?</p>
<p>Or perhaps what happens is a user goes to a dapp developers website , clicks on something like “install dapp to Nami wallet”,then the wallet copies the dapp code from the dapp developers server to the users wallet and they then run the off chain code on their browser ? Is that how it works?</p>

<plutus>
How is off-chain code decentralized?
# How is off-chain code decentralized?

(Asked by: username_0 on 2021-12-02)

Consider this a follow up to this other question that someone else asked: [Where is stored off-chain code?](https://cardano.stackexchange.com/questions/2274/where-is-stored-off-chain-code)

My question: Without a dapp store how does one deploy a Plutus script in a fully Decentralized manner? Would you have to do what SundaeSwap did and get some node operators to run the off chain code for you?

Or perhaps what happens is a user goes to a dapp developers website , clicks on something like “install dapp to Nami wallet”,then the wallet copies the dapp code from the dapp developers server to the users wallet and they then run the off chain code on their browser ? Is that how it works?

**Tags:** plutus

---

## 1 answers

### Answer by username_1 on 2021-12-02. Score: 1

The [purpose of a dApp store](https://iohk.io/en/blog/posts/2021/10/25/new-certification-levels-for-smart-contracts-on-cardano/) is for script *curation*, not script availability. Perhaps "dApp Store" is a bit of a misnomer, because software here isn't being sold in the traditional sense. Instead, it is being submitted to the open source community in a setting where professionals can audit/debug the code and report their findings to the community. This is imperative for decentralization because we can't expect everyone to have the level of expertise necessary to know whether the code they are using is sufficient for their purposes. By having trusted entities validate scripts and sign off on them allows us to outsource the code audit to an entity who has a reputation to maintain.

As far as [deploying the actual script](https://docs.cardano.org/plutus/learn-about-plutus), the code is run on the client machine (your computer) and the hash of the operation is posted on chain. This is analogous to how simple transactions work - sending/receiving addresses are not stored on chain for each transaction, only the hashes of TX outputs are stored.

> **Comments:**
> **username_0**: So how does the code get onto the users machine? It sounds like the code will originate from a centralized entity (SundaeSwap servers & SundaeSwap website ?) and then run on users browsers and interact with users wallet as need be?   Have I got that right?  
> **username_2**: @user1761806 yes, that is one of the ways. It really doesn't matter where the user gets the script from -- he could get it from a friend, a contract deployer, compile from source himself, fetch from ipfs.  

---

