sfwr

command module
v0.0.0-...-4abef1a Latest Latest
Warning

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

Go to latest
Published: Jan 3, 2026 License: MIT Imports: 13 Imported by: 0

README

sfwr

A book recommendation web app written in Go. This is my first Go project.

Deployment Options

Option 1: GitHub Pages (Automated)

Push changes to the sfwr_database.db file or saved_cover_images/ directory to trigger GitHub Actions, which builds and deploys to GitHub Pages automatically.

You can also use the web UI's "Deploy" button (./sfwr -web=8080) to commit and push in one step.

Option 2: Tailscale Funnel (Self-hosted)

Serve the static site directly from any machine on your Tailscale network using Tailscale Funnel. No separate webserver required.

Setup
  1. Build the static site:

    go build -o sfwr
    ./sfwr -build
    
  2. Enable Funnel in Tailscale admin console: Go to admin.tailscale.com → Access controls → Funnel → "Add Funnel to policy"

  3. Start serving (persistent, survives reboots):

    sudo tailscale funnel -bg /path/to/sfwr/output/public
    
  4. Check status:

    tailscale funnel status
    
  5. Stop serving:

    sudo tailscale funnel /path/to/sfwr/output/public off
    
Finding Your Public URL

Your site URL follows the pattern: https://<machine-name>.<tailnet-name>.ts.net

To find your tailnet name:

tailscale status --json | grep MagicDNSSuffix

Example output:

"MagicDNSSuffix": "tail06ce8e.ts.net",

If your machine is named regulus, the URL would be: https://regulus.tail06ce8e.ts.net

You can also find the tailnet name in the Tailscale admin console under DNS settings.

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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