--- myst: html_meta: "description": "Deploy dApps generated by QuickDApp to IPFS and link them to an ENS subdomain directly from Remix IDE." "keywords": "deploy dapp, IPFS, ens, remixdapp.eth, quickdapp, remix ide" --- # Deploying a dApp ```{warning} This feature is only available to beta testers. Join the Remix beta program to get access. ``` You can deploy dApps generated by {doc}`QuickDApp ` on IPFS and link them to an ENS domain directly from Remix. Remix automatically provides a free ENS subdomain under `remixdapp.eth` for your dApp with no gas fees required. ## Deploying to IPFS Before you deploy to IPFS, you must have a smart contract compiled and deployed using the Deploy & Run plugin, and a dApp generated by the QuickDApp plugin. ```{note} When you are configuring rules for the dApp generation, ensure that you leave the "**Create as Base Mini App**" checkbox unchecked. ``` After QuickDApp generates your dApp, expand the "**Publish to IPFS**" tab in QuickDApp's right panel and click the "**Deploy to IPFS**" button. This bundles and uploads your files to IPFS. Once the upload is complete, a `CID` (Content Identifier) is returned. This is a unique address that identifies your dApp on the network and is used as the target when registering the ENS subdomain. ![The Publish to IPFS tab in the QuickDApp right panel, showing the Deploy to IPFS button and a generated CID after a successful upload](images/deploy_dapp/upload-ipfs.png) ## Register ENS subdomain Once your dApp is on IPFS, you can link it to a human-readable ENS subdomain under `remixdapp.eth` (e.g. `myapp.remixdapp.eth`) so users can access it without needing the raw CID. Registration transactions are processed on **Arbitrum One (L2)**, with gas fees covered by the Remix backend, so you pay nothing. To register the subdomain, expand the "**Register ENS (Arbitrum)**" tab in the QuickDApp right panel. ```{note} This tab only becomes visible after the deployment to IPFS is complete. ``` Enter your preferred subdomain name (e.g., `bridge.remixdapp.eth`) and Remix will check its availability. Once you have selected an available subdomain, click the "**Register Subdomain**" button and wait for the server to process the registration. ![The Register ENS (Arbitrum) tab in the QuickDApp right panel, showing the subdomain input field and Register Subdomain button](images/deploy_dapp/link-ens.png) ```{note} The returned URLs have `.limo` appended (e.g. `myapp.remixdapp.eth.limo`). This is because standard web browsers cannot natively resolve `.eth` domains. `.limo` is a gateway service that resolves ENS names and serves the underlying IPFS content over HTTPS. ``` Your dApp is now live at https://[yourname].remixdapp.eth.limo.