sitebrush

command module
v2.0.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 16, 2026 License: BSD-2-Clause Imports: 74 Imported by: 0

README

SiteBrush logo

SiteBrush

Replace hacked WordPress with editable static HTML.
Keep the website and its design. Remove the fragile public CMS backend.

Website · Live demo · Downloads · Install

Go Reference Go Report Card Code coverage

Static HTML One binary Browser editing


SiteBrush imports an existing website, preserves its pages and design, and replaces the risky public-facing CMS with fast static files.

Visitors receive ordinary HTML, CSS, JavaScript, and images. The site owner can still edit text, pictures, buttons, menus, and page blocks directly in the browser.

SiteBrush is not a WordPress clone. It is a WordPress retirement tool.

Why SiteBrush?

  • Preserve the existing design instead of rebuilding the website.
  • Remove WordPress, public login forms, plugins, themes, PHP, and the database from the visitor-facing side.
  • Reduce the attack surface and ongoing maintenance burden.
  • Edit content directly on the page with a right-click or long-press.
  • Freeze the public version while preparing changes, then publish safely.
  • Run the server as one standalone binary without a separate dependency stack.
  • Import existing WordPress, Joomla, Wix, Readymag, and custom websites.

Nothing is completely invulnerable, but a static public website exposes far fewer moving parts than a traditional WordPress installation.

How it works

  1. Import — SiteBrush copies pages, media, styles, scripts, and other website files.
  2. Edit — open the site and use right-click on desktop or long-press on mobile.
  3. Publish safely — visitors keep seeing the stable version until your changes are ready.

Try SiteBrush with your own website without changing the live site, or open the demo.

SiteBrush Templates

Static sites are simple and fast, but repeated content can be annoying to maintain.

Imagine you import a website with 200 pages, all with the same footer address. Just mark one of those elements as a SiteBrush template:

<div class="SiteBrush-Template FooterAddress">
    123 Main Street, New York, NY 10001
</div>

SiteBrush will automatically find matching elements on the other pages and assign the same template to them.

From that point on, you can edit the element in one place, and SiteBrush keeps it synchronized across all pages.

This works well for:

  • headers
  • footers
  • sidebars
  • menus
  • contact information
  • tables
  • shared <style> blocks
  • other repeated content

All changes are stored in revisions, so previous versions can always be restored.

Automatic Import

When you import an existing site, SiteBrush follows its references and automatically imports the files it uses:

  • CSS
  • JavaScript
  • images
  • other referenced assets

So you can take an existing static website, import it, and immediately start editing it almost like a dynamic CMS — while the result remains simple static HTML.

Downloads

The server version is recommended for a public website. Desktop builds are useful for local work with a graphical interface.

Platform Desktop application Server binary
Linux amd64 GTK 4.1 · GTK 4.0
arm64 GTK 4.1 · GTK 4.0
amd64 · arm64
macOS Universal DMG Intel amd64 · Apple Silicon arm64
Windows amd64 ZIP · arm64 ZIP amd64 EXE · arm64 EXE
FreeBSD amd64 · arm64
OpenBSD amd64 · arm64
NetBSD amd64 · arm64

Linux desktop builds use GTK 4.1 for newer distributions and GTK 4.0 for older LTS distributions.

Server checksums · Desktop checksums · All latest builds

Install the server version

Each block below is ready to copy and paste. It automatically selects amd64 or arm64, downloads SiteBrush, makes it executable, and installs the system service.

Linux Linux — copy and paste into the terminal
(
  set -eu

  case "$(uname -m)" in
    x86_64|amd64) ARCH="amd64" ;;
    aarch64|arm64) ARCH="arm64" ;;
    *) echo "Unsupported CPU architecture: $(uname -m)" >&2; exit 1 ;;
  esac

  sudo mkdir -p /usr/local/bin
  sudo curl -fL \
    "https://sitebrush.com/download/latest/server-app/sitebrush_linux_${ARCH}" \
    -o /usr/local/bin/sitebrush
  sudo chmod +x /usr/local/bin/sitebrush
  sudo /usr/local/bin/sitebrush -install
)

The installer detects the available Linux service manager and configures automatic startup.

macOS macOS — Intel and Apple Silicon
(
  set -eu

  case "$(uname -m)" in
    x86_64|amd64) ARCH="amd64" ;;
    arm64|aarch64) ARCH="arm64" ;;
    *) echo "Unsupported CPU architecture: $(uname -m)" >&2; exit 1 ;;
  esac

  sudo mkdir -p /usr/local/bin
  sudo curl -fL \
    "https://sitebrush.com/download/latest/server-app/sitebrush_darwin_${ARCH}" \
    -o /usr/local/bin/sitebrush
  sudo chmod +x /usr/local/bin/sitebrush
  sudo /usr/local/bin/sitebrush -install
)

The installer configures SiteBrush as a launchd service.

Windows Windows — PowerShell as Administrator

Open PowerShell as Administrator, then paste:

$ErrorActionPreference = "Stop"

$Arch = if ($env:PROCESSOR_ARCHITECTURE -eq "AMD64") {
    "amd64"
} elseif ($env:PROCESSOR_ARCHITECTURE -eq "ARM64") {
    "arm64"
} else {
    throw "Unsupported CPU architecture: $env:PROCESSOR_ARCHITECTURE"
}

$Dir = Join-Path $env:ProgramFiles "sitebrush"
$Exe = Join-Path $Dir "sitebrush.exe"

New-Item -ItemType Directory -Force -Path $Dir | Out-Null

Invoke-WebRequest `
    -Uri "https://sitebrush.com/download/latest/server-app/sitebrush_windows_${Arch}.exe" `
    -OutFile $Exe

& $Exe -install

The installer creates and verifies the Windows service and enables automatic startup.

FreeBSD FreeBSD — amd64 and arm64
(
  set -eu

  case "$(uname -m)" in
    x86_64|amd64) ARCH="amd64" ;;
    aarch64|arm64) ARCH="arm64" ;;
    *) echo "Unsupported CPU architecture: $(uname -m)" >&2; exit 1 ;;
  esac

  sudo mkdir -p /usr/local/bin
  sudo fetch \
    -o /usr/local/bin/sitebrush \
    "https://sitebrush.com/download/latest/server-app/sitebrush_freebsd_${ARCH}"
  sudo chmod +x /usr/local/bin/sitebrush
  sudo /usr/local/bin/sitebrush -install
)
OpenBSD OpenBSD — amd64 and arm64
(
  set -eu

  case "$(uname -m)" in
    x86_64|amd64) ARCH="amd64" ;;
    aarch64|arm64) ARCH="arm64" ;;
    *) echo "Unsupported CPU architecture: $(uname -m)" >&2; exit 1 ;;
  esac

  doas mkdir -p /usr/local/bin
  doas ftp \
    -o /usr/local/bin/sitebrush \
    "https://sitebrush.com/download/latest/server-app/sitebrush_openbsd_${ARCH}"
  doas chmod +x /usr/local/bin/sitebrush
  doas /usr/local/bin/sitebrush -install
)

Run the commands as root when doas is not configured.

NetBSD NetBSD — amd64 and arm64
(
  set -eu

  case "$(uname -m)" in
    x86_64|amd64) ARCH="amd64" ;;
    aarch64|arm64) ARCH="arm64" ;;
    *) echo "Unsupported CPU architecture: $(uname -m)" >&2; exit 1 ;;
  esac

  sudo mkdir -p /usr/local/bin
  sudo ftp \
    -o /usr/local/bin/sitebrush \
    "https://sitebrush.com/download/latest/server-app/sitebrush_netbsd_${ARCH}"
  sudo chmod +x /usr/local/bin/sitebrush
  sudo /usr/local/bin/sitebrush -install
)

Uninstall

The -uninstall command removes the configured system service.

Linux, macOS, FreeBSD, and NetBSD
sudo /usr/local/bin/sitebrush -uninstall
OpenBSD
doas /usr/local/bin/sitebrush -uninstall
Windows — PowerShell as Administrator
& "$env:ProgramFiles\sitebrush\sitebrush.exe" -uninstall

Start editing

After installation:

  1. Point the website domain to the server.
  2. Open the domain in a browser.
  3. Use right-click on a computer or long-press on a phone.
  4. Edit the content and save it.
https://your-domain.example

Best suited for

  • Business websites and landing pages
  • Portfolios and agency websites
  • Documentation and knowledge bases
  • Old WordPress websites that keep breaking
  • Mostly static websites that still need easy browser editing

Keep a traditional dynamic CMS when the project requires complex e-commerce, memberships, extensive server-side workflows, or custom plugin logic.


Keep the website. Keep the design. Keep simple browser editing.
Leave the database, plugin stack, public admin backend, and constant maintenance behind.

sitebrush.com

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
pkg
channelacme
Package channelacme implements the small RFC 8555 subset SiteBrush needs.
Package channelacme implements the small RFC 8555 subset SiteBrush needs.
cli
crawler
Package crawler contains the parsing and download rules used while importing external pages.
Package crawler contains the parsing and download rules used while importing external pages.
database/drivers
Package drivers groups database/sql driver registrations so heavy dependencies stay out of lightweight go test/go vet runs unless a binary explicitly imports this package.
Package drivers groups database/sql driver registrations so heavy dependencies stay out of lightweight go test/go vet runs unless a binary explicitly imports this package.
scripts
crosscompile command

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL