Go (lang)

A great systems-oriented programming language I’ve taken up to complement due to its ability to cross-compile and produce (mostly) self-contained static binaries.

Tricks

Shrinking executables via gccgo and upx:

go build -mod=vendor -gccgoflags ‘-Os -s’ -o main && upx –best –lzma main

Resources

CategoryDateLinkNotes
Authentication2025obligator

a relatively simple and opinionated OpenID Connect (OIDC) server

pocket-id

A simple and easy-to-use OIDC provider

tinyauth

a simple authentication server that integrates with traefik

2020authelia

authentication and authorization server providing 2-factor authentication and single sign-on

tobab

an identity-aware proxy

Ory

a full IAP authentication solution with OpenID integration

loginsrv

a standalone minimalistic login server providing a JWT login for multiple login backends

2018traefik-forward-auth

a forward auth service that provides OAuth support for the Traefik reverse proxy

Big Data2018gohadoop

A set of libraries to build Hadoop jobs

2015Glow

An easy-to-use distributed computation (map-reduce) system in pure Go.

Configuration2018envconfig

simple, no-frills environment variable handling

2017viper

A flexible configuration solution for 12 factor apps (and more)

Data Science2025zasper

a Jupyter clone designed for massive concurrency with minimal resource usage.

2018go-freeling

Natural language processing

gonum/floats

operations on slices of floats

gonum/graph

Graph navigation/traversal

gonum/matrix

Matrix algebra

gonum/optimize

Gradient descent and minimization

gonum/plot

Plotting and visualization

gonum/stat

statistics package

gophernotes

A Jupyter kernel for Go

gota

DataFrames, Series and data manipulation

regression

Multivariable regression

csvutil

CSV and tabular data

Data Structures2016gen

Clojure-like immutable data-structures and functional helpers

Database2025pennybase

Poor man’s Backend-as-a-Service (BaaS), similar to Firebase/Supabase/Pocketbase

2022sqlite

a Go interface to sqlite3

go-sqlite3-stdlib

a set of math and statistics extensions to sqlite

2021nakama

A game-oriented state server, backed by CockroachDB

2020dbmate

a database migration tool that supports MySQL, PostgreSQL, SQLite and ClickHouse

2016gorm

A Go ORM library

Desktop2025fynedesk

a desktop environment built with the Fyne GUI toolkit

2022wails

an Electron-like framework for desktop app development

Frameworks2024htmgo

a lightweight framework for building interactive web applications using Go and htmx without JavaScript

GUI2026Shirei

a Go-based immediate-mode GUI framework with a flexbox model

2024gio

a cross-platform GUI library for Go

spot

a React-like destkop GUI toolkit for Go that supports FLTK and Cocoa

2023fyne

a cross platform GUI toolkit that can be used in Android and iOS

2022tinygui

a GUI toolkit for TinyGo

Graphics2025fauxgl

a software rasterizer and 3D renderer

meshview

a 3D viewer for STL meshes

2022sdfx

a CAD package written in Go

2016gift

The Go Image Filtering Toolkiti

HomeKit2022hap

a rewrite of the brutella/hc HomeKit library

IoT2020tamago

compile and execute Go on bare ARM SoCs

2018gokrazy

a pure-Go userland for appliances

tinygo

an LLVM compiler for small devices

Learning2026go-kata

A collection of daily coding challenges to master idiomatic Go through deliberate practice

Libraries2026bubbletea

Go TUI framework from Charm

go-bt

A minimalist behavior tree library for game AI, background workers and async logic

2025script

a library for building script alternatives

event

simple internal event bus for Go applications

2024rill

a toolkit for clean, composable, channel-based concurrency

darwinkit

a library for building Darwin (macOS) apps

lo

a lodash-style library for generics, map, filter, contains, find, etc.

go-funk

a library with map, reduce and other functional primitives

2023ergo

an impressive -compatible library for implementing OTP design patterns

sdf

signed distance function shape generation

oidc

OpenID Connect client and server library

2022maphash

Hash any comparable type using Golang’s fast runtime hash.

imagemeta

supports EXIF, XMP and HEIC metadata parsing

natiu-mqtt

a self-contained MQTT implementation

2020Chroma

a fast generic syntax highlighter

olric

A distributed cache and in-memory key/value data store that can be used standalone or embedded.

2019bild

a collection of parallel image processing algorithms

2018go-imap

an IMAP client library

goworker

A Resque-compatible library for background workers

go-dsp

A digital processing package

ffjson

Faster JSON for Go

gjson

Fast JSON data retrieval

scrape

A simple interface for Go web scraping

2016go-linq

LINQ-like functionality with coroutine support

libchan

A network-enabled abstraction that mimics channels

Messaging2024SmoothMQ

is a drop-in replacement for AWS SQS

2018nsq

A message queueing system

Microservices2020flogo

a low-code environment with streaming support and a Node-RED like approach.

flatend

an interesting take on deployment and discovery via P2P/Kademlia

2019go-micro

a microservices framework with pluggable components for discovery, transports, etc.

Middleware2017casbin

a flexible access control library

Networking2023blocky

DNS proxy/ad-blocker for local network (can run inside of gokrazy)

2018router7

A router based on gokrazy

Other2021macdriver

Objective-C bindings for Go

2018Shrinking Go binaries

By stripping debug symbols and using upx

go-bindata

Pack external assets into a Go program as binary data

Parsers2016etree

An XML handling library modeled on Python’s ElementTree

Protocols2026Pion Handoff

a Go tool for moving a browser-created WebRTC session into a backend process so you can record, inject media, or inspect decrypted traffic.

2016go-vnc

An extensible VNC protocol library

2015torrent

An embeddable BitTorrent library

mangos

A network library for IPC patterns

Robotics2014Gobot

A set of robotics-oriented libraries

Search2016blevesearch

A Lucene-like indexing library

Servers2026wish

SSH app framework from Charm

2023mox

modern full-featured (SMTP, IMAP, DKIM, etc.) mail server

2020maddy

a composable, all-in-one SMTP/IMAP server

System2018suture

A library that implements Erlang-like supervision trees

Tools2025shiori

a simple Pocket-like bookmark manager with a web interface, able to archive pages like ArchiveBox

minimalytics

a minimalist analytics tool backed by SQLite

act

a tool for running GitHub Actions locally

u-root

a Go-based userspace for embedded systems and cloud environments.

2024bruin

a data pipeline tool that integrates data ingestion, transformation, and quality checks.

gozer

A simple static site generator

monogon

a Linux userland in pure Go

nano-web

Hyper-minimal webserver for serving SPAs and static content

zoraxy

A general purpose HTTP reverse proxy and forwarding tool

2023glow

a CLI Markdown renderer in te spirit of more/less

gojekyll

A partial reimplementation of Jekyll in Go

2022vhs

terminal demo recorder with GIF/ffmpegre output

goweight

a CLI tool to identify which libraries contribute most to binary size

2021till

a web scraping caching proxy that handles most of the anti-scraping mechanics

zinc

a lightweight alternative to elasticsearch that claims to run in less than 100 MB of RAM and has a broadly similar API

pyroscope

a profiling platform with support for Go, Python and Ruby

2020Got

a tool/library that uses concurrent HTTP range requests for faster downloads

Transpilers2014Tardis Go

A transpiler to JavaScript

funcgo

A simplified dialect that compiles to Clojure

GopherJS

A transpiler to JavaScript

UI2025gotui

a cross-platform terminal UI library that supports terminal dashboards and charts

2019muon

a lightweight alternative to Electron with go bindings

2018termui

A terminal-oriented dashboard library

2014ui

A platform-native GUI library

Video2024go2rtc

a camera proxy that can surface RTSP cameras to HomeKit (and much more)

broadcast-box

a tool for broadcasting video streams to multiple platforms using WebRTC

Web2022but

a full-stack web framework with server-side rendering and good JS integration

2020gearbox

A web framework built around fasthttp

2018Beego

Ships with an ORM and built-in monitoring

QOR

A set of libraries for E-Commerce and CMS

Gin

uses a Radix tree for routing, handles panics

Gobuffalo
Iris

Lots of features and plugins

2017HttpRouter

A high performance HTTP router

Goji

A Sinatra-inspired, minimalist framework

2016echo

A high-performance HTTP server framework with LetsEncrypt support

Web Frameworks2024sandwich

a middleware & routing framework

pocketbase

a Firebase-like web app realtime backend with SQLite, user and file management, and a dashboard UI.

Writing2023vale

an extensible linter for prose

This page is referenced in: