GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — GitHub - hyperuplink/hyperuplink: A Super High Speed Internet Bulletin Board (https://tty.fail/hyperuplink/hyperuplink)

BranchesTags
Open more actions menu

Latest commit

 

History

397 Commits
397 Commits

Folders and files

NameName
Last commit message
Last commit date
.github
.github
 
 
build
build
 
 
deploy
deploy
 
 
docs
docs
 
 
errs
errs
 
 
helpers
helpers
 
 
http
http
 
 
locales
locales
 
 
logic
logic
 
 
migrations
migrations
 
 
models
models
 
 
services
services
 
 
static
static
 
 
templates
templates
 
 
testdata/golden
testdata/golden
 
 
tools
tools
 
 
views
views
 
 
worker/targets
worker/targets
 
 
.dockerignore
.dockerignore
 
 
.editorconfig
.editorconfig
 
 
.gitignore
.gitignore
 
 
.goreleaser.yaml
.goreleaser.yaml
 
 
.sqruff
.sqruff
 
 
.swaggo
.swaggo
 
 
DEVELOPMENT.md
DEVELOPMENT.md
 
 
Dockerfile
Dockerfile
 
 
LICENSE
LICENSE
 
 
Makefile
Makefile
 
 
README.md
README.md
 
 
api_account_test.go
api_account_test.go
 
 
api_admin_test.go
api_admin_test.go
 
 
api_auth_test.go
api_auth_test.go
 
 
api_foundation_test.go
api_foundation_test.go
 
 
api_reads_test.go
api_reads_test.go
 
 
api_test.go
api_test.go
 
 
api_writes_test.go
api_writes_test.go
 
 
cache_test.go
cache_test.go
 
 
createuser_test.go
createuser_test.go
 
 
database_test.go
database_test.go
 
 
docker-compose.yml
docker-compose.yml
 
 
flake.lock
flake.lock
 
 
flake.nix
flake.nix
 
 
go.mod
go.mod
 
 
go.sum
go.sum
 
 
hyperuplink.go
hyperuplink.go
 
 
hyperuplink.toml
hyperuplink.toml
 
 
language_test.go
language_test.go
 
 
podman-compose.yml
podman-compose.yml
 
 
templates_test.go
templates_test.go
 
 
ui.html
ui.html
 
 
web_test.go
web_test.go
 
 

Repository files navigation

Hyperuplink

SEGV LICENSE

===============================================================================
                       NOW DIALING ...  ::  CARRIER DETECTED
===============================================================================

       █   █ █   █ ████  █████ ████  █   █ ████  █     █████ █   █ █   █
       █   █ █   █ █   █ █     █   █ █   █ █   █ █       █   ██  █ █  █
       █████  ███  ████  ███   ████  █   █ ████  █       █   █ █ █ ███
       █   █   █   █     █     █  █  █   █ █     █       █   █  ██ █  █
       █   █   █   █     █████ █   █  ███  █     █████ █████ █   █ █   █

      ::: A SUPER HIGH SPEED INTERNET BULLETIN BOARD AS SINGLE BINARY :::


      No PHP. No /var/www. No CGI. No FPM. No node_modules. No JavaScript.
     Just one self-contained, statically-linked executable that beams data
            right from your PostgreSQL cluster into beautiful, modern, 
                      server-side rendered HTML5 and CSS.


                        100% JavaScript-Free Browsing
                            Modern HTML5 and CSS
                                Runs Anywhere
                       Zero Loose Files Spilled On Disk
                           Themeable Like It's 1998
                                  And More!


                     Hyperuplink, it's the forum software 
                    your wife told you not to worry about.
                  And it, too, really whips the Llama's ass.

===============================================================================

Hyperuplink is a modern internet bulletin board reimagined as a single, dependency-free binary, supporting PostgreSQL clusters and without any runtime dependencies, 100% JavaScript free, and based on modern HTML5/CSS.

More info here and at hyperup.link.

Building

Hyperuplink is actively developed on tty.fail. GitHub is a mirror that provides pre-built binaries.

Requirements

  • Go
  • PostgreSQL server
  • Redis-compatible server (Redis, Valkey, KeyDB, ...)
  • Optional: S3-compatible object store (e.g. MinIO)

From Source

Clone this repository

  • from tty.fail (primary):
    $ git clone https://tty.fail/hyperuplink/hyperuplink.git
  • from GitHub (mirror):
    $ git clone https://github.com/hyperuplink/hyperuplink.git

Then cd into the cloned directory and build:

$ make build

The self-contained binary will be available at ./build/hyperuplink and can be moved wherever you please.

You can check the version of a build with:

$ ./build/hyperuplink -v

Configuration

Hyperuplink is configured through a single TOML file. A complete, commented reference can be found in hyperuplink.toml. Almost everything else, like the board name, theme, colorscheme, permissions, groups, is configured live from the /admin panel once the board is running and you've created your admin account.

Note: For S3 attachment storage, use a private bucket. The gated attachment route serves objects with server-side credentials, so a private bucket keeps uploads from being guessable at the storage layer.

Running

Point the binary at your configuration file and launch it:

$ ./build/hyperuplink -c "file:///etc/hyperuplink.toml"

On startup Hyperuplink connects to PostgreSQL, runs any pending migrations, starts the web server and the background worker, and starts serving. Open your browser at the address you configured (e.g. http://localhost:3000), sign up with the e-mail you listed under [Users] PromoteAdmin, and you'll be set up as the board's first administrator.

Developing

During development you can build and run in a single step:

$ make run

To stop the server, send it a SIGINT (Ctrl-C) or SIGTERM. This shuts the web server and worker down cleanly.

Thanks

A huge, heartfelt thank-you to nielssp/classic-stylesheets, whose gorgeous retro CSS made my life enormously easier when starting out with Hyperuplink and gave the whole thing its unmistakable old-school look. Go star it.

License

Copyright © 2025-2026 マリウス

Hyperuplink is released under Version 1.1 of the SEGV License, whose full text is included in the LICENSE file. Go read it, there will be a test on it on Monday.

About

A Super High Speed Internet Bulletin Board (https://tty.fail/hyperuplink/hyperuplink)

hyperup.link

Topics

bbsbulletin-boardbulletin-board-systemdiscourseforumforum-softwarephpbbvanillavbulletin

Resources

Readme
License
Activity
Custom properties

Stars

18 stars

Watchers

0 watching

Forks

2 forks
Report repository

Releases

Packages

Used by

Contributors

Languages

You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.