Hosting Decentralised Apps on ar.io
The goal of decentralised apps (dapps) has always been full stack. However, until now, that has not been possible due to single points of failure for hosting frontends.
Ar.io solves this via:
- Permanent Storage: Pay once and store your site forever on Arweave.
- Smart Domains: a sovereign owned domain-space via Ar.io Name System (ArNS).
- Distributed Gateway Network: access your site as a subdomain of active gateways
For example, this docs portal is a decentralised app:
Same app, different gateway.
You can repeat this by loading the docs subdomain for any of the active gateways in the network.
What You'll Learn
In this guide series, you'll learn how to deploy and manage permanent applications on ar.io.
We'll cover the following:
Deploy a Permanent dApp
Walk through an end-to-end deployment: upload a static app, register an ArNS name, and point the name at your app.
Deploying with Permaweb-Deploy
Master the recommended CLI tool for permanent deployments with Next.js and React, including wallet setup and GitHub Actions automation.
Using Undernames for App Versioning
Manage versions and environments (staging, dev) with ArNS undernames.
Deploying with Arlink
One-click deployments using the Arlink web interface.
Deploying with ArDrive
Deploy permanent dApps using ArDrive's user-friendly web interface.
Each guide will build on the last and by the end of series you'll be equipped to deploy and host any decentralised app.
Next Steps
Start with Permaweb-Deploy
Begin with our recommended CLI deployment tool
Deploy End-to-End
Upload, register an ArNS name, and point it at your app
Get an ArNS Name
Register a human-readable domain for your dApp
Learn About ArNS
Understand how the Ar.io Name System works
How is this guide?
Encrypted Data Storage with Nillion Blind Computing
Store encrypted data on Arweave and control access through Nillion's decentralized blind computing network
Migrating Your App to the New SDKs
Placeholder guide for updating applications to the current ar.io SDKs and Solana-based protocol interactions.