User Guide

Everything you need to know to create and publish your Simple Page.


Home | Architecture | About



Getting Started

Forking a Template

The easiest way to get started is to fork an existing Simple Page template:

  1. Visit a Template: Go to any Simple Page site (like new.simplepage.eth)
  2. Click Fork: Look for the Fork button in the top-right corner
  3. Start Editing: You'll be taken to the editor with a copy of the template

Available Templates:

The Editor

The Simple Page editor provides a powerful yet simple interface for creating your content:

Markdown Editor

  • Live Preview: See your changes in real-time as you type
  • Syntax Highlighting: Markdown syntax is highlighted for better readability
  • Auto-Save: Your work is automatically saved as you type
  • Link Management: Easily link between pages using markdown syntax,
    e.g. [My Page](/my-page/)

Preview Mode

While in Edit mode, simply click the Preview button top right to enter preview mode.

  • Preview Content: See how your content will look like when published
  • Preview Links: Links to other pages takes you to the preview of that page

Pages View

The Pages view shows all pages in your site and helps you organize your content:

Accessing Pages View

Click the (hamburger) menu top right (while in edit mode), then click the Pages button in the dropdown menu.

Managing Pages

  • Page List: See all pages in your site with their titles
  • Page Creation: Add new pages with the "New Page" button
  • Page Options: There are three buttons on every page,
    • Preview - opens preview mode
    • Edit - opens edit mode
    • Delete - removes the page

Page Structure

  • Home Page: Your main page (usually /)
  • Subpages: Create pages like /about/, /contact/, etc.
  • Nested Pages: Organize content with nested structures, e.g. /blog/first-post/

Publishing Your Page

When you're ready to share your content with the world:

Before Publishing

  1. Check Content: Review all pages and make sure everything looks good
  2. Test Links: Verify all internal links work correctly
  3. Get an ENS name: make sure you have an ENS domain you can publish the content on

Publishing Process

  1. Click Publish: Use the Publish button in the editor
  2. Connect Wallet: Confirm you connected the correct address
  3. Select Domain: Choose which ENS domain to publish to
  4. Review Changes: See what will be published
  5. Confirm Transaction: Approve the transaction in your wallet
  6. Wait for Confirmation: The blockchain will process your update

After Publishing

  • Global Access: Your site is immediately available at your ENS domain
  • Multiple Gateways: Access via .eth.link, .eth.limo, .eth.ac, etc.
  • Censorship Resistant: Your content is now decentralized and resistant to takedowns

Subscription Management

Simple Page uses a subscription model to ensure sustainable hosting:

When Subscription

  • First Publish: You'll need an active subscription to publish, the first time you try to publish to a new domain you will be redirected to the subscription page
  • Storage Expiry: When your storage units expire, you will be prompted to renew your subscription

Managing Your Subscription

  1. Visit Subscribe Page: Go to the subscription page for your domain
  2. Check Status: See your current storage units and expiration dates
  3. Purchase Storage: Extend your subscription into the future if desired

Advanced Usage

Publishing Static Websites with CLI

For developers and advanced users, Simple Page provides a powerful CLI tool. This tool enables you to publish any static website and have it persisted by the Simple Page indexer nodes.

Installation

npm install -g @simplepg/cli

Usage

# Publish a static website
simplepage publish myapp.eth ./dist

# Publish a single file
simplepage publish myapp.eth ./index.html

# Check subscription status
simplepage info myapp.eth

Supported Content

  • Static HTML: Any HTML, CSS, and JavaScript files
  • Images and Media: All common web media formats
  • Web Apps: Single-page applications and complex web apps
  • Documentation: Technical docs, blogs, portfolios

Running the SimplePage DService

Contribute to the Simple Page network by running your own DService indexer node:

Prerequisites

  • Node.js 20+ with ES modules support
  • IPFS node (Kubo) running and accessible
  • Ethereum RPC endpoint

Installation

npm install -g @simplepg/dservice

Basic Setup

# Start with default settings
simplepage-dservice

# Start with custom configuration
simplepage-dservice \
  --ipfs-api http://localhost:5001 \
  --api-port 3000 \
  --rpc https://mainnet.infura.io/v2/YOUR_KEY \
  --chain-id 1

For a full list of options and commands, see simplepage-dservice --help.

Kubo Best Practices

When starting your Kubo IPFS node, it is recommended that you use the following functionality:

  • AutoTLS - gives your node a TLS certificate to make it accessible from web browsers
  • AcceleratedDHTClient - makes the connectivity of your node better, at the cost of some CPU overhead

Allow/Block List Management

The DService implementation has support for allow-/block-listing pages based on domains. This can be useful if there is certain content you know you don't want your node to index, or certain pages you ONLY want to index.

# Manage allow list
simplepage-dservice allow-list show
simplepage-dservice allow-list add example.eth
simplepage-dservice allow-list rm example.eth

# Manage block list
simplepage-dservice block-list show
simplepage-dservice block-list add spam.eth
simplepage-dservice block-list rm spam.eth

Benefits of Running a Node

  • Network Health: Help ensure content availability
  • Censorship Resistance: Contribute to decentralized hosting
  • Community Support: Support the Simple Page ecosystem
  • Custom Control: Host your own content and trusted sites

Getting Help