v0.3.0 · archived experiment

A tiny TUI for your
containers

Containers, images, volumes, networks — and now local AI models via Docker Model Runner. All managed with a keystroke, no browser tabs, no memorized flags. Just a beautifully minimal TUI that adapts to any pane.

  • stackGo · Bubble Tea · Lipgloss
  • size60×13 min
  • depsDocker daemon · DMR (opt.)
~/projects — tinyd

              
# features

Everything you reach for, one keypress away.

Five tabs. Live stats. Deep inspection. In-app chat with local AI models. tinyd treats Docker the way top treats processes — fast, focused, fluent.

Containers

Real-time CPU and memory. Start, stop, restart, drop into an interactive shell, and tail logs with substring search.

  • s start/stop
  • r restart
  • e exec shell
  • l logs
  • d delete

Images

Layer-by-layer composition, architecture, exposed config. Spawn new containers via an interactive modal — name, ports, env, and a volume picker (existing, new named, or bind mount). Pull from Docker Hub or re-pull the latest tag in one keypress.

  • r run new
  • p pull
  • u update
  • i inspect
  • d delete

Models new

First-class support for Docker Model Runner. Pull local LLMs from the ai/ namespace, pick a variant by params and quant, then chat with them in a full-screen streaming transcript — all without leaving the terminal.

  • c chat in-app
  • r REPL
  • p pull variant
  • y yank curl
  • d delete

Volumes

See exactly which containers are attached, driver options, usage — and delete safely with inline Yes/No confirmation.

  • i inspect
  • d delete
  • v columns

Networks

Topology at a glance. IPv4 / IPv6 subnets, driver and scope, connection state — for when port-mapping math gets hairy.

  • i inspect
  • d delete
  • v columns

Fully responsive — works in every pane you throw it in.

Adapts to any terminal size, with a min of 60 columns × 13 rows. Resize your VS Code split, drop into a tmux pane, or SSH into a remote Docker host — the layout reflows without a restart. Auto-detects your light/dark terminal background, and lets you toggle columns per-tab with v.

wide
● nginx-proxy   RUNNING   2.3%   128MB
medium
● api-server   RUN   15.1%
min
● postgres   RUN
# live demo

A look inside the TUI.

Switch tabs — including the new Models tab. The interface is keyboard-only and proud of it.

tinyd · docker.sock ? help · ⌃C×2 quit
Showing 1-0 of 0 i inspect d delete v columns 1–5 tabs
# install

Three lines and you're in.

Designed for macOS, Linux and Windows on amd64 and arm64, in Go. The Models tab builds on the public Docker Model Runner interface.

● archived
# tinyd was released as open source in 2026 and is
# now archived. This page is the case study: the interface,
# the flows and the decisions. No downloads.
● remote docker
$ export DOCKER_HOST=tcp://host:2376
$ ./tinyd
# keyboard

The whole interface, on a postcard.

Most letter keys are case-insensitive. ? or Shift+H opens help any time.

navigation

↑ k
move up
↓ j
move down
← h
prev tab
→ l
next tab
1–5
jump to tab

universal

i
inspect
d
delete
v
toggle columns
?
help
esc
back / cancel
⌃C ×2
quit

containers

s
start / stop
r
restart
e
exec shell
l
logs (then s search)

images

r
run new container
p
pull from hub
u
update to latest
i
inspect layers

models

c
chat in-app
r / ⇧R
shell REPL
p
pull variant
y
yank curl
# who

Made by a designer. Mostly written by Claude.

tinyd is an experiment in what happens when a designer hands the keys to an AI pair-programmer and asks for the smallest possible Docker Desktop. The result: a little terminal app that boots in milliseconds and stays out of your way.

Claude ♥ tinyd — pixel-art trio
claude · ♥ · tinyd
copied to clipboard