No description
  • HTML 57.7%
  • Shell 24.2%
  • CSS 7.2%
  • PowerShell 6.1%
  • Makefile 4.8%
Find a file
2026-06-11 12:13:34 +02:00
.cursor updates 2026-04-29 21:40:33 +02:00
config updates 2026-04-29 21:40:33 +02:00
content Add changelog infrastructure 2026-03-16 01:02:46 +02:00
data docs: sync v0.1.21 + changelog — MCP client support 2026-06-11 12:13:34 +02:00
layouts homepage: add Cursor + Grok Build badges to ACP feature card 2026-05-27 10:47:11 +02:00
static docs: sync v0.1.19 + changelog 2026-05-27 10:40:08 +02:00
.gitignore updates 2026-04-29 21:40:33 +02:00
AGENTS.md updates 2026-04-29 21:40:33 +02:00
CHANGELOG.md bump 2026-02-17 17:25:45 +02:00
Makefile updates 2026-04-29 21:40:33 +02:00
README.md updates 2026-04-29 21:40:33 +02:00

GoClaw Website

Landing page and documentation site for GoClaw.

Built with Hugo. Documentation content is sourced from the main goclaw repository via sparse checkout.

Prerequisites

  • Hugo — install via your package manager (brew install hugo, apt install hugo, pacman -S hugo, etc.) or grab a binary from https://gohugo.io/installation/. Any recent Hugo release works.
  • Git with sparse checkout support

Quick Start

# Build the site
make build

# Development server with live reload
make serve

# Update docs from upstream goclaw repo
make update

How It Works

goclaw repo (git.goclaw.org)
    ├── README.md          # Main getting started content
    └── docs/
        ├── *.md           # Documentation pages
        └── sidebar.yaml   # Navigation structure
              │
              │ sparse checkout (make build)
              ▼
goclaw.org/goclaw/
    ├── README.md
    └── docs/
              │
              │ rsync + copy
              ▼
goclaw.org/content/docs/
    ├── readme.md          # From README.md
    └── *.md               # From docs/
goclaw.org/data/sidebar.yaml
              │
              │ hugo --minify
              ▼
goclaw.org/public/         # Static output

Documentation lives in the main goclaw repository. This repo handles:

  • Website templates and styling
  • Hugo configuration
  • Build orchestration

Directory Structure

goclaw.org/
├── Makefile              # Build orchestration
├── hugo.toml             # Hugo configuration
├── .gitignore
├── content/
│   ├── _index.md         # Landing page marker
│   └── docs/             # (synced, gitignored)
├── data/
│   └── sidebar.yaml      # (synced, gitignored)
├── layouts/
│   ├── _default/
│   │   └── baseof.html   # Base template (Bootstrap 5.3)
│   ├── index.html        # Landing page template
│   ├── docs/
│   │   ├── list.html     # Docs index
│   │   └── single.html   # Doc page with sidebar
│   └── partials/
│       └── docs-sidebar.html
├── static/
│   └── css/
│       └── style.css     # Custom styles
├── goclaw/               # Sparse clone (gitignored)
└── public/               # Build output (gitignored)

Editing Documentation

Do not edit files in content/docs/ or data/sidebar.yaml — they are synced from the goclaw repo and will be overwritten.

To edit documentation:

  1. Edit README.md (root) or files in docs/ in the goclaw repository
  2. Commit and push to goclaw repo
  3. Run make update here to pull changes

The root README.md becomes /docs/readme/ on the website.

To edit navigation structure:

  1. Edit docs/sidebar.yaml in the goclaw repo
  2. Follow same commit/push/update flow

Editing Website

Templates, styles, and Hugo config live in this repo:

  • Templates: layouts/
  • Styles: static/css/style.css
  • Hugo config: hugo.toml
  • Build process: Makefile

Makefile Targets

Target Description
make build Sparse checkout + sync + Hugo build
make serve Dev server at http://localhost:1313
make sync Sync docs from local goclaw clone
make update Pull latest from goclaw repo + sync
make deploy Build and push to Cloudflare Pages
make clean Remove build artifacts
make distclean Remove everything including goclaw clone

Deployment

Site is deployed manually via wrangler direct upload to Cloudflare Pages project goclaw-org.

Prerequisites

  • wrangler installed globally:
    npm install -g wrangler@latest
    
  • A Cloudflare API token with Account → Cloudflare Pages → Edit and User → User Details → Read permissions, exported as CLOUDFLARE_API_TOKEN:
    export CLOUDFLARE_API_TOKEN="<your-token>"
    
    Create one at https://dash.cloudflare.com/profile/api-tokens.
  • Your Cloudflare account ID (visible in the dashboard sidebar or in any Workers & Pages URL), exported as CLOUDFLARE_ACCOUNT_ID:
    export CLOUDFLARE_ACCOUNT_ID="<your-account-id>"
    
    This is required so wrangler doesn't try to call the /memberships endpoint (which a least-privilege Pages token can't read).

Deploy

make deploy

This runs make build (sync + Hugo) and then wrangler pages deploy public --project-name=goclaw-org --branch=master.

To deploy a preview without affecting production, change the branch:

wrangler pages deploy public --project-name=goclaw-org --branch=preview

Stack

  • Hugo (static site generator)
  • Bootstrap 5.3 (CDN)
  • Bootstrap Icons (CDN)
  • No npm, no Node.js, no Python