--- description: How to use decentralized hosting for your NFT assets --- # Arweave ### Arweave [Arweave](https://www.arweave.org/) is a global, permanent, and decentralized data storage layer that allows you to store documents and applications forever. Arweave is different from other decentralized storage solutions in that there is only one up-front cost to upload each file. **Step 1 - Get a new wallet and AR tokens** Download & save a new wallet (JSON key file) and receive a small amount of AR tokens for free using the [Arweave faucet](https://faucet.arweave.net/). If you already have an Arweave browser wallet, you can skip to Step 3. At the time of writing, the faucet provides 0.02 AR which is more than enough to upload a file. If at any point you need more AR tokens, you can fund your wallet from one of Arweave's [supported exchanges](https://arwiki.wiki/#/en/Exchanges). **Step 2 - Load the key file into the arweave.app web wallet** Open [arweave.app](https://arweave.app/) in a browser. Select the '+' icon in the bottom left corner of the screen. Import the JSON key file from step 1. ![Arweave.app import key file](../../.gitbook/assets/hosting/arweave-1.png) **Step 3 - Upload file** Select the newly imported wallet by clicking the "blockies" style icon in the top left corner of the screen. Select **Send.** Click the **Data** field and select the file you wish to upload. ![Arweave.app upload file](../../.gitbook/assets/hosting/arweave-2.png) The fee in AR tokens will be calculated based on the size of the file and displayed near the bottom middle part of the screen. Select **Submit** to submit the transaction. After submitting the transaction, select **Transactions** and wait until the transaction appears and eventually finalizes. This can take over 5 minutes so please be patient. **Step 4 - Copy the transaction ID** Once the transaction finalizes, select it, and copy the transaction ID. ![Arweave.app transaction ID](../../.gitbook/assets/hosting/arweave-3.png) **Step 5 - Publish the asset with the transaction ID** ![Ocean Market - Publish with arweave transaction ID](../../.gitbook/assets/hosting/arweave-4.png)