AR.IO LogoAR.IO Documentation

Hosting Decentralized Websites

Create permanent websites that can't be censored, taken down, or modified after deployment. Host your content on Arweave and serve it through AR.IO gateways for a truly decentralized web experience.

What Makes It Different?

Traditional websites:

  • Hosted on centralized servers
  • Can be taken down or censored
  • Require ongoing hosting costs
  • Single point of failure

Decentralized websites:

  • Stored permanently on Arweave
  • Censorship-resistant
  • Pay once, host forever
  • Distributed across the network

How It Works

1. Arweave Manifests

Arweave manifests are JSON files that define how your website's files are organized and linked together. They enable:

  • Friendly URLs - Access files with readable paths instead of transaction IDs
  • Relative linking - Use ./style.css instead of full transaction IDs
  • Fallback pages - Handle 404 errors gracefully
  • File organization - Structure your website like a traditional site

Example manifest:

{
  "manifest": "arweave/paths",
  "version": "0.2.0",
  "index": {
    "path": "index.html"
  },
  "fallback": {
    "id": "404-page-transaction-id"
  },
  "paths": {
    "index.html": {
      "id": "main-page-transaction-id"
    },
    "style.css": {
      "id": "css-transaction-id"
    },
    "script.js": {
      "id": "js-transaction-id"
    }
  }
}

2. Deployment Tools

Permaweb Deploy - CLI deployment tool that:

  • Uploads your build folder to Arweave using Turbo
  • Creates a manifest automatically
  • Updates your ArNS domain
  • Integrates with GitHub Actions
  • Requires --deploy-folder and --arns-name parameters

Arlink - User-friendly web interface for:

  • Quick website uploads through the browser
  • Manifest generation
  • ArNS integration

ArDrive Web - User-friendly interface for:

  • File management
  • Website building
  • Deployment workflows

3. ArNS Integration

Primary Names - Decentralized domain names that:

  • Point to your website's manifest
  • Provide human-readable URLs
  • Can be updated to point to new versions
  • Are owned and controlled by you

Quick Start

1. Build your website - Create a static website with HTML, CSS, and JavaScript

2. Choose a deployment tool:

# Using permaweb-deploy (CLI tool)
npm install permaweb-deploy --save-dev
npx permaweb-deploy --deploy-folder ./build --arns-name your-domain

# Using arlink (web interface)
# Visit the arlink website and upload through the browser

3. Get an ArNS domain - Register a primary name to point to your website

4. Access your site - Visit https://your-domain.arweave.net or any AR.IO gateway

Benefits

  • Permanent hosting - Your website will exist forever
  • Censorship resistance - Cannot be taken down by authorities
  • Cost efficiency - Pay once, host forever
  • Global distribution - Served from multiple AR.IO gateways
  • Version control - Update your ArNS domain to point to new versions

How is this guide?