3-day current streak·12-day longest streak
Hi, I'm Brandur. I like databases, the independent web, and fast interfaces. I write in full sentences on Slack and use emoticons instead emoji. I think the modern web took…
Hi, I'm Brandur.
I like databases, the independent web, and fast interfaces. I write in full sentences on Slack and use emoticons instead emoji. I think the modern web took a wrong turn on its evolutionary path and that we should resurrect ideas from the earlier days of computing — less centralization, software that's harder to learn but more powerful, and wider technical literacy.
My personal website is here and I'm on Twitter at *@brandur*.
---
I'm a sometimes writer. Most frequently by publishing a newsletter called Nanoglyph (which you should sign up for :). Here are its latest issues:
- ⓝ 052 — Adrift, Minimum Viable Unit of Saleable Software, Balkans, Bears?! June 1, 2026
- ⓝ 051 — Well, That Was Fast May 18, 2026
- ⓝ 050 — API Spring March 29, 2026
I put other stream of consciousness thoughts into tiny blog posts called fragments:
- 🐚 Rich, fully attributed context timeout errors in Go June 10, 2026
- 🐚 SQLite bulk insert with sqlc June 6, 2026
- 🐚 Generating words? Keep them short. June 5, 2026
Once in a while, I write longer form articles:
- 📖 The Minimum Viable Unit of Saleable Software May 31, 2026
- 📖 The Second Wave of the API-first Economy March 27, 2026
- 📖 Eradicating N+1s: The Two-phase Data Load and Render Pattern in Go May 28, 2024
As often as I can, I post a daily photo and update to sequences:
- 📷 111 — Ladyslipper June 19, 2026
- 📷 110 — Bull Creek Hills June 18, 2026
- 📷 109 — Monolith June 17, 2026
This README.md is generated automatically by a scheduled GitHub Action. More information on how that works here.
-
sorg ★ PINNED
A Go-based static site generator that compiles brandur.org.
Go ★ 519 1d agoExplain → -
redis-cell ★ PINNED
A Redis module that provides rate limiting in Redis as a single command.
C ★ 1.3k 4mo agoExplain → -
json_schema
A JSON Schema V4 and Hyperschema V4 parser and validator.
Ruby ★ 231 3y agoExplain → -
heroku-http-api-design
The Heroku HTTP API Design Guide, forked to look more like its original pre-GitBook state with a more easily digestible single-page format.
★ 179 5y agoExplain → -
tmux-extra
Configuration and scripts for sane Tmux default behavior.
Shell ★ 121 15y agoExplain → -
hutils
A collection of command line utilities for working with logfmt.
Ruby ★ 110 11y agoExplain → -
rocket-rides-atomic
No description.
Ruby ★ 102 3y agoExplain → -
sinatra-router
A tiny vendorable router that makes it easy to try routes from a number of different modular Sinatra applications.
Ruby ★ 63 2y agoExplain → -
rhttpserve
A tiny HTTP server that can serve files out of any rclone remote.
Go ★ 39 9y agoExplain → -
rocket-rides-unified
No description.
Ruby ★ 27 8y agoExplain → -
podcore
No description.
Rust ★ 21 8y agoExplain → -
microservices
No description.
★ 21 8y agoExplain → -
blackswan
A project designed to provide personal data ownership and display.
JavaScript ★ 21 3y agoExplain → -
heroku-buildpack-mono
ASP.NET buildpack deployed on top of Mono and XSP.
Shell ★ 18 14y agoExplain → -
postgres-practices
No description.
★ 18 7y agoExplain → -
rocket-rides-scalable
No description.
Ruby ★ 17 8y agoExplain → -
singularity
A demonstration of a very simple static site generator that deploys to S3 through Travis CI.
Go ★ 14 7y agoExplain → -
dorian
A personal identity manager and aggregator written in Rails 3.1.
JavaScript ★ 13 13y agoExplain → -
casseo
A Graphite dashboard for the command line.
Ruby ★ 12 14y agoExplain → -
connections-test
No description.
Go ★ 10 7y agoExplain → -
wanikaniapi
A Go client for WaniKani's API (https://docs.api.wanikani.com/).
Go ★ 10 3y agoExplain → -
modulir
Modulir is an experimental mini-framework for static site generation.
Go ★ 10 1y agoExplain → -
qself
Qself is a small tool to sync personal data from APIs down to local TOML files for easier portability and storage.
Go ★ 10 5y agoExplain → -
hncheck
A very simple app that checks to see if something under one of your domains has been submitted to HN, and emails you if it has.
Go ★ 9 1d agoExplain → -
logfmt
logfmt parser in Rust.
Rust ★ 9 11mo agoExplain → -
cmark2jira
Translate good CommonMark into bad JIRA markup.
Rust ★ 9 5y agoExplain → -
simple-schema
No description.
★ 9 12y agoExplain → -
que-degradation-test
No description.
Ruby ★ 8 11y agoExplain → -
org
A now defunct project that served my personal site.
★ 8 9y agoExplain → -
mutelight-v2
Content for my technical journal at mutelight.org, designed to be used with Hekla.
Ruby ★ 8 5y agoExplain → -
brandur
No description.
Go ★ 7 1d agoExplain → -
neospring
No description.
Go ★ 7 3y agoExplain → -
geotools
Updated mirror for the Geotools.Net project.
C# ★ 7 16y agoExplain → -
hekla ▣
Responsive blogging engine for ephemeral platforms.
JavaScript ★ 7 11y agoExplain → -
redis-haskell
Haskell bindings for Redis, a fast persistent key-value store.
Haskell ★ 7 16y agoExplain → -
passages-signup
A backend for the signup forms of my newsletters "Nanoglyph" and "Passages & Glass".
Go ★ 6 4mo agoExplain → -
simplebox
Package simplebox provides a simple, easy-to-use cryptographic API where all of the hard decisions have been made for you in advance.
Go ★ 6 2y agoExplain → -
mastodon-cross-post
A simple project that cross-posts tweets to Mastodon.
Go ★ 6 3y agoExplain → -
heroku-agent
A lightweight process that can communicate with the Heroku CLI and hk to provide more expendient fulfillment of API requests and better convenience of use.
Go ★ 6 11y agoExplain → -
perpetual
No description.
Go ★ 5 8y agoExplain → -
logs
No description.
Ruby ★ 5 5y agoExplain → -
slides
An extremely simplistic logs-as-data implementation.
Ruby ★ 5 12y agoExplain → -
middleware-rust
No description.
Rust ★ 4 8y agoExplain → -
http_accept
Simple library for HTTP Accept header parsing and ordering.
Ruby ★ 4 11y agoExplain → -
rack-instruments
Rack middleware providing basic instrumentation.
Ruby ★ 4 12y agoExplain → -
heroku-mono-build
Heroku-based build recipe for Mono and XSP.
Shell ★ 4 14y agoExplain → -
composable
Slides for my talk "Post-Rails? Composable Apps with a First-class API".
JavaScript ★ 3 3y agoExplain → -
rack-robots
Rack middleware that denies all robots for staging and development environments.
Ruby ★ 3 13y agoExplain → -
mutelight-v1
Nanoc source for my blog at mutelight.org. Deprecated in favor of Askja.
Ruby ★ 3 15y agoExplain → -
facts-api
Facts API.
Ruby ★ 3 12y agoExplain → -
facts-cli
Command line interface based on Thor for the Facts sever project.
Ruby ★ 3 15y agoExplain → -
obsidian
Web framework in Haskell to power factz.org. Deprecated in favor of the Rails Facts app.
Haskell ★ 3 16y agoExplain → -
artifice-excon
A version of Wycat's Artifice for use with Excon.
Ruby ★ 3 13y agoExplain → -
the-surf
Article content for the Surf.
Shell ★ 3 10y agoExplain → -
csrf
No description.
Go ★ 2 8mo agoExplain → -
cping
No description.
Go ★ 2 9mo agoExplain → -
imagemagick-builder
No description.
★ 2 1y agoExplain → -
facts-canonical
Canonical content source for the Facts Project.
Ruby ★ 2 3y agoExplain → -
heroku-api-blog
No description.
JavaScript ★ 2 3y agoExplain → -
mozjpeg-builder
No description.
★ 2 3y agoExplain → -
postgres-table-rename-test
No description.
Ruby ★ 2 3y agoExplain → -
spring83-keygen
No description.
★ 2 3y agoExplain → -
gal
No description.
Go ★ 2 3y agoExplain → -
db-fill
No description.
PLpgSQL ★ 2 4y agoExplain → -
sequel-instruments
Basic instrumentation for Sequel.
Ruby ★ 2 13y agoExplain → -
facts
A tool for getting smarter and winning arguments.
Ruby ★ 2 14y agoExplain → -
d2
A cross-version compatible shortcut for invoking a Ruby debugger.
Ruby ★ 2 14y agoExplain → -
sharks
A scraping and data visualization service for Global Shark Attack File records.
Ruby ★ 2 14y agoExplain → -
dping
No description.
Ruby ★ 2 11y agoExplain → -
service-stub-example
No description.
Ruby ★ 2 13y agoExplain → -
facts-web
Frontend interface that talks to facts-api.
JavaScript ★ 2 12y agoExplain → -
omniauth-heroku
No description.
Ruby ★ 2 13y agoExplain → -
surf
Source code for my blog 'the Surf', uses a custom (and included) static generator.
Ruby ★ 2 15y agoExplain → -
askja
Minimalist blogging platform written in Rails as a flexible alternative to static generators.
Ruby ★ 2 14y agoExplain → -
rakenet
Command line build and testing infrastructure for a .NET project.
Ruby ★ 2 16y agoExplain → -
heroku-buildpack-mono-build
Builds binaries for the herok-buildpack-mono project.
Shell ★ 2 14y agoExplain → -
zendtools.vim
Various useful functions for working in PHP with Zend.
VimL ★ 2 15y agoExplain → -
facts-nodejs
Facts database for increasing retention of general knowledge, and for winning arguments. Deprecated in favor of the Rails version.
JavaScript ★ 2 16y agoExplain → -
hncheck-runner
No description.
★ 1 1d agoExplain → -
sqlc ⑂
Generate type-safe code from SQL
★ 1 1y agoExplain → -
stripe-warehouse
No description.
Go ★ 1 10y agoExplain → -
neospring-bridge
No description.
Go ★ 1 3y agoExplain → -
qself-brandur
No description.
★ 1 2y agoExplain → -
wgt2
No description.
Go ★ 1 10y agoExplain → -
tailwind-experimenting
No description.
CSS ★ 1 4y agoExplain → -
magmv
A program to rename poorly titled magazine PDF files.
Go ★ 1 3y agoExplain → -
wkunburn
No description.
Go ★ 1 4y agoExplain → -
deathguild
Creates Spotify playlists for each night of Death Guild.
HTML ★ 1 5y agoExplain → -
rclone ⑂
"rsync for cloud storage" - Google Drive, Amazon Drive, S3, Dropbox, Backblaze B2, One Drive, Swift, Hubic, Cloudfiles, Google Cloud Storage, Yandex Files
Go ★ 1 9y agoExplain → -
vim-gh-line ⑂
vim plugin that open the link of current line on github
Vim script ★ 1 7y agoExplain → -
que ⑂
A Ruby job queue that uses PostgreSQL's advisory locks for speed and reliability.
Ruby ★ 1 10y agoExplain → -
umbrella-rust
No description.
Rust ★ 1 12y agoExplain → -
transaction-philosophy
No description.
HTML ★ 1 7y agoExplain → -
twitter-auther
No description.
Ruby ★ 1 8y agoExplain → -
redis-metrics
No description.
C ★ 1 9y agoExplain → -
lvat
lvat is a tiny Go daemon that will consume a syslog feed sent over HTTP and allow simple lookups to be performed on the data that it collects.
Go ★ 1 11y agoExplain → -
fireball
No description.
Go ★ 1 11y agoExplain → -
schemadoc
No description.
Ruby ★ 1 12y agoExplain → -
certrotate
No description.
Go ★ 1 10y agoExplain → -
heroku-hyper-schema
No description.
★ 1 12y agoExplain → -
wgt
A WGT-related playground.
Go ★ 1 11y agoExplain → -
millstone
No description.
★ 1 14y agoExplain → -
submodule-dud
No description.
★ 1 14y agoExplain → -
talks
Proposals and outlines for conference talks.
★ 1 12y agoExplain → -
facts-twitter
Simple program to pull random facts from a Facts installation and push them to Twitter.
Ruby ★ 1 12y agoExplain → -
asp-net-sample
Sample ASP.NET MVC application that can run on Heroku.
C# ★ 1 14y agoExplain → -
parched
A minimalist Git-backed wiki running on Rails.
Ruby ★ 1 15y agoExplain → -
php-mbstring-overload-tests
Simple test suite to demonstrate PHP's mbstring function overloading.
C ★ 1 15y agoExplain → -
archlinux-packages
My contributed PKGBUILDs for the Archlinux AUR.
★ 1 15y agoExplain → -
test-2024-repo
No description.
★ 0 1y agoExplain → -
sequel ⑂
Sequel: The Database Toolkit for Ruby
★ 0 1y agoExplain → -
go-mod-test-public
No description.
Go ★ 0 2y agoExplain → -
riverqueue-py ⑂
No description.
★ 0 2y agoExplain → -
go-module-koan-1
No description.
Go ★ 0 2y agoExplain → -
golangci-lint ⑂
Fast linters Runner for Go
★ 0 2y agoExplain → -
paralleltest ⑂
Linter to check if your tests have been marked as parallel correctly
★ 0 2y agoExplain → -
opencensus-go ⑂
A stats collection and distributed tracing framework
★ 0 3y agoExplain → -
thousand-services
No description.
CSS ★ 0 3y agoExplain → -
diff-minimal ⑂
A library for diffing golang structures
Go ★ 0 4y agoExplain → -
postgres-operator ⑂
Production PostgreSQL for Kubernetes, from high availability Postgres clusters to full-scale database-as-a-service.
★ 0 4y agoExplain → -
mutelight
No description.
Go ★ 0 4y agoExplain → -
qself-deprecated
No description.
Go ★ 0 6y agoExplain → -
fsnotify-test
No description.
Go ★ 0 5y agoExplain → -
postgres ⑂
Mirror of the official PostgreSQL GIT repository. Note that this is just a *mirror* - we don't work with pull requests on github. To contribute, please see http://wiki.postgresql.org/wiki/Submitting_a_Patch
C ★ 0 5y agoExplain → -
postgres-builder
No description.
★ 0 5y agoExplain → -
redis ⑂
Redis is an in-memory database that persists on disk. The data model is key-value, but many different kind of values are supported: Strings, Lists, Sets, Sorted Sets, Hashes, HyperLogLogs, Bitmaps.
C ★ 0 9y agoExplain → -
docs
No description.
★ 0 10y agoExplain → -
simpleLightbox ⑂
SimpleLightbox is lightweight and responsive lightbox library with no dependencies. Display images, galleries, videos or custom content and control your lightbox with easy to use api.
★ 0 6y agoExplain → -
alacritty ⑂
A cross-platform, GPU-accelerated terminal emulator
Rust ★ 0 9y agoExplain → -
webmock ⑂
Library for stubbing and setting expectations on HTTP requests in Ruby.
Ruby ★ 0 6y agoExplain → -
fxhash ⑂
A fast, non-secure, hashing algorithm derived from an internal hasher in FireFox.
★ 0 6y agoExplain → -
context-demo
No description.
Go ★ 0 6y agoExplain → -
partition-sample
No description.
PLpgSQL ★ 0 6y agoExplain → -
wine
No description.
★ 0 7y agoExplain → -
modulir-sample
No description.
Go ★ 0 7y agoExplain → -
inet-sortsupport-test
No description.
Ruby ★ 0 7y agoExplain → -
rustgen
No description.
★ 0 7y agoExplain → -
hugoDocs ⑂
The source for https://gohugo.io/
HTML ★ 0 7y agoExplain → -
modtest1
No description.
Go ★ 0 8y agoExplain → -
book ⑂
Actix user guides
Rust ★ 0 8y agoExplain → -
rust-ctrlc ⑂
Easy Ctrl-C handler for Rust projects
Rust ★ 0 8y agoExplain → -
diesel ⑂
A safe, extensible ORM and Query Builder for Rust
Rust ★ 0 8y agoExplain → -
redis_cluster ⑂
A redis cluster ruby client gem
Ruby ★ 0 8y agoExplain → -
middleware-ruby
No description.
Ruby ★ 0 8y agoExplain → -
hub ⑂
hub helps you win at git.
Go ★ 0 8y agoExplain → -
redis-gcra ⑂
Redis-backed rate limiting based on generic cell rate algorithm
Ruby ★ 0 9y agoExplain → -
slog-json ⑂
Json formatter for slog-rs
Rust ★ 0 9y agoExplain → -
json_schema-bug-reproduction-suite
Tries to reproduce: https://github.com/brandur/json_schema/issues/82
Ruby ★ 0 9y agoExplain → -
OpenAPI-Specification ⑂
The OpenAPI Specification Repository
JavaScript ★ 0 9y agoExplain → -
stripe-go ⑂
Go client for the Stripe API
Go ★ 0 10y agoExplain → -
ca-test
No description.
Ruby ★ 0 10y agoExplain → -
spotify ⑂
A Go wrapper for the Spotify Web API
Go ★ 0 10y agoExplain → -
gen
No description.
Go ★ 0 10y agoExplain → -
facts-go
A program that exports cards in Markdown to an Anki TSV.
Go ★ 0 10y agoExplain → -
nanowrimo15
No description.
★ 0 10y agoExplain → -
jomatracker
No description.
Ruby ★ 0 10y agoExplain → -
spaced
No description.
Go ★ 0 10y agoExplain → -
rack ⑂
Open-source PaaS on AWS
Go ★ 0 10y agoExplain → -
gojsonschema ⑂
An implementation of JSON Schema, draft v4 - Go language
Go ★ 0 11y agoExplain → -
godep ⑂
dependency tool for go
Go ★ 0 11y agoExplain → -
logrus ⑂
Structured, pluggable logging for Go.
Go ★ 0 11y agoExplain → -
fernet-rb ⑂
Delicious HMAC Digest(if) authentication and AES-128-CBC encryption
Ruby ★ 0 11y agoExplain → -
ruby ⑂
The Ruby Programming Language
Ruby ★ 0 12y agoExplain → -
rollbar-gem ⑂
Exception tracking and logging from Ruby to Rollbar
Ruby ★ 0 11y agoExplain → -
scrivener
No description.
Ruby ★ 0 11y agoExplain → -
heroku-agent-plugin
No description.
Ruby ★ 0 11y agoExplain → -
heroku-go ⑂
Golang Heroku API Client
★ 0 11y agoExplain → -
excon ⑂
EXtended http(s) CONnections
Ruby ★ 0 11y agoExplain → -
vedeu ⑂
A terminal case of wonderland.
★ 0 12y agoExplain → -
pagination-template
No description.
Ruby ★ 0 9y agoExplain → -
devdigest ⑂
A daily digest for development teams
Ruby ★ 0 12y agoExplain → -
sab
No description.
Go ★ 0 12y agoExplain → -
umbrella
No description.
Go ★ 0 12y agoExplain → -
gobyexample ⑂
Go by Example
Go ★ 0 13y agoExplain → -
historycodex
No description.
Ruby ★ 0 12y agoExplain → -
grouptest
No description.
Ruby ★ 0 13y agoExplain → -
event-manager-api-stub
A Rack-based stub for the Event Manager API. Designed to be used with something like artifice-excon.
Ruby ★ 0 13y agoExplain → -
actionpack-rack-upgrade-2
ActionPack 2.3.15 with lax Rack dependency.
Ruby ★ 0 13y agoExplain → -
actionmailer-rack-upgrade
Attempt to upgrade a horrible and ancient version of ActionMailer to use a modern Rack.
Ruby ★ 0 13y agoExplain → -
blackswan-go
No description.
Go ★ 0 13y agoExplain → -
actionmailer-2.3.17-rack-upgrade
ActionMailer with a actionpack-2.3.17-rack-upgrade dependency (which has a lax Rake dependency).
Ruby ★ 0 13y agoExplain → -
mono-decoy
Compiles like the Mono repository for faster buildpack testing.
Shell ★ 0 14y agoExplain → -
heroku-api-stub-example
No description.
Ruby ★ 0 13y agoExplain → -
kramdown ⑂
kramdown is yet-another-markdown-parser but fast, pure Ruby, using a strict syntax definition and supporting several common extensions.
Ruby ★ 0 12y agoExplain → -
leaky
No description.
Go ★ 0 12y agoExplain → -
jruby ⑂
JRuby, an implementation of Ruby on the JVM
Ruby ★ 0 12y agoExplain → -
blog-scrap
Scrap repo to test online editing.
★ 0 13y agoExplain → -
nanowrimo13
No description.
★ 0 12y agoExplain → -
actionmailer-rack-upgrade-2
ActionMailer 2.3.15 with lax Rack dependency.
Ruby ★ 0 13y agoExplain → -
oauth-token-generator
Extremely simple binary for generating Oauth tokens and oauth secrets.
Ruby ★ 0 14y agoExplain → -
nexus-cli
CLI for a Nexus API.
Ruby ★ 0 13y agoExplain → -
actionpack-2.3.17-rack-upgrade
ActionPack 2.3.17 with a lax Rack dependency.
Ruby ★ 0 13y agoExplain → -
excon-slides_instrumentor
Excon instrumentor providing instrumentation in Slides format.
Ruby ★ 0 13y agoExplain → -
service-mocking-example
Simplistic example on a nice pattern for using webmock and an API stub to test an application that consumes that service.
Ruby ★ 0 13y agoExplain → -
courier
No description.
Ruby ★ 0 12y agoExplain → -
actionpack-rack-upgrade
No description.
Ruby ★ 0 13y agoExplain → -
facts_api_stub
A Rack-based stub for the Facts API.
Ruby ★ 0 12y agoExplain → -
heroku-oauth-addon
A Heroku addon implementation providing an easy way to create and register a Heroku OAuth client to an App.
Ruby ★ 0 13y agoExplain → -
aerie
Tiny app for storing and sharing a photo stream.
Ruby ★ 0 13y agoExplain → -
nexus-web
Web interface for a Nexus API.
JavaScript ★ 0 14y agoExplain →
No repos match these filters.