airstrike Andy Terra ยท Rust, iced, and the occasional web toy

An index of things I've built and put out in the open. Most of it orbits iced, the Rust GUI library. Source lives on GitHub; crates on crates.io.

Live open in a browser

iced crates, widgets, tools

sweeten crate

Sweeten your daily iced brew. Extra widgets and helpers.

crushy linter

An iced-specific linter: a clippy fork with every upstream lint removed and a new set written for iced application code.

markright widget

A rich text editor widget for iced.

tabular widget

A table widget with selection, flexible enough to make editable cells.

chillcam crate

Webcam capture and rendering for iced applications.

hyozu crate

Charts for iced.

dragking widget

A very simple drag and drop for iced's Row and Column.

iced_grid widget

A likely cursed but ostensibly clever grid widget.

iced_ellipsize widget

Ellipsize text in iced.

iced_receipts example

Clean screen management, unified event handling, keyboard-navigable forms.

iced_openai app

A minimal OpenAI desktop chat app.

sleepy_hollow experiment

A random walk through the headless renderer and shader downsampling.

iced_comic comic

A short comic about iced.

iced_fontsampler tool

Preview fonts inside iced.

Claude Code skills the ones worth sharing

# one skill, or several, or everything (skills + guides)
curl -sL https://airstrike-8kq.pages.dev/install.sh | sh -s iced
curl -sL https://airstrike-8kq.pages.dev/install.sh | sh -s all
/iced

Compose iced apps that hold together: workspace layout, TEA composition with Action<I, M> and .map() bubbling, iced API conventions, Rust style. Leans on the guides below.

/map

Massive Action Plan. Explore, draft, get agent critique until approved, compare against reference implementations, then produce phase docs. For big features.

/minimap

The 2โ€“5 commit version of /map: one plan file, one round of critique, then execute.

/handoff

End-of-session checklist that writes the handoff doc for the next session.

/goon

Resume a project: read the latest handoff and plan, check the tree, carry on.

/bro

Restate the last message in plain human language. No jargon.

Guides install to ~/.claude/guides

Rust style

Module structure (foo.rs + foo/, never mod.rs), naming, error handling, imports.

Opaque types

Make illegal states unrepresentable. Every type is minted from a transformation.

iced mental model

iced is not immediate mode. Where work happens: update vs view, layout vs draw.

Push state down

TEA composition at scale: instructions, &mut handles, keeping update flat.

Decisions log

The D{N} entry format: issue, options table, recommendation.

Elsewhere ML, data, and the Excel years

tatami

Backend-agnostic multidimensional cube trait for Rust. Foundation for Pigment/Anaplan-style financial models.

FeGPT

A toy GPT in Rust, inspired by nanoGPT.

fired

Neural network regression with burn and polars.

decision-trees

ID3 and Gini binary split algorithms.

xlbuilder

Parse annotated VBA modules and build an Excel add-in from the CLI.

Terra

An Excel add-in for Wall Street professionals.