Skip to main content
Opal Editor provides a powerful publishing system that allows you to deploy your static sites to multiple hosting platforms directly from the editor. The publishing process is completely local-first, with no backend dependencies required.

How Publishing Works

Opal Editor’s publishing system follows a two-step process:
  1. Build: Your content is transformed into static HTML files using the build system (Freeform or Eleventy strategies)
  2. Deploy: The built files are packaged and deployed to your chosen hosting platform
The entire process runs locally on your machine, ensuring complete control and privacy of your content.

Build Process

Before publishing, Opal Editor builds your site:
  • Source Files: Markdown files, templates (Mustache, EJS, Nunjucks), and assets are indexed
  • Processing: Templates are rendered, markdown is converted to HTML, and assets are copied
  • Output: A complete static site is generated in the build output directory
  • Optimization: HTML is prettified and files are prepared for deployment
The build system supports:
  • Markdown with frontmatter
  • Multiple template engines (Mustache, EJS, Nunjucks, Liquid)
  • Global and directory-specific data files
  • Custom layouts and includes
  • Asset copying and management

Supported Platforms

Netlify

Deploy to Netlify with automatic CDN and continuous deployment

Vercel

Publish to Vercel’s edge network with instant deployments

Cloudflare Pages

Host on Cloudflare’s global network with Pages

GitHub Pages

Deploy to GitHub Pages using Git push deployment

AWS S3

Publish to Amazon S3 static website hosting

Deployment Features

Universal Deploy Files

Opal Editor creates a universal file format that works across all platforms:
  • Automatic encoding detection (UTF-8 or Base64)
  • Efficient content loading and caching
  • Support for all file types (HTML, CSS, JS, images, fonts)
  • Automatic favicon generation if missing

Platform-Specific Optimizations

  • GitHub Pages: Automatic URL rewriting for custom base URLs
  • Netlify: Direct file upload with site configuration
  • Vercel: Project creation and deployment polling
  • Cloudflare: Pages deployment with account management
  • AWS S3: Bucket configuration and public access setup

Authentication

Each platform requires authentication:
  • API Tokens: Netlify, Vercel, Cloudflare, AWS
  • OAuth: GitHub, Netlify, Vercel
  • Device Flow: GitHub (for CLI workflows)
All credentials are stored locally in your workspace. Opal Editor never sends your credentials to any third-party servers.

Deployment Workflow

The typical deployment workflow:
1

Configure Destination

Set up a deployment destination with your chosen platform and authentication credentials.
2

Build Your Site

Run a build to generate static HTML files from your markdown and templates.
3

Deploy

Deploy the built files to your configured destination. The DeployRunner handles the upload and returns a live URL.
4

Verify

Check the deployment URL to ensure your site is live and working correctly.

Deployment Status

Each deployment tracks:
  • Status: pending, success, or error
  • Build ID: Link to the source build
  • Destination URL: Main site URL
  • Deployment URL: Specific deployment URL (for platforms that support it)
  • Logs: Real-time deployment progress and error messages
  • Timestamps: Start and completion times

Next Steps

Choose your preferred hosting platform to get started:

Build docs developers (and LLMs) love