When I started making a bunch of free apps to give away on my site I was not intending it to become a platform but as we built more and more of the gifts, the platform shape kind of just fell out of the work.
So I have been formalizing it up into a proper system and just deployed the newest update, which has a lot of helpful information about each of the apps and how you can compose them together.
I had my system write up a post explaining the technical particulars of the newly expanded Gifts platform.
I hope this proves to be helpful to some of you.
What the Gifts platform is
Each Gift is a single small tool that does one job and states its own limits. Three properties hold across all 96 by construction. They are dependency-free — no install step, no supply chain, small enough to read end to end. They are atomic — one job per tool, no framework wrapped around them. And they are lock-in-free — every one is MIT, so a Gift is copied into a project as a file and carries no further obligation. Critically, none of them import each other. They are not a library to adopt; they are independent parts.
That independence is what makes them compose. Because each tool is exact about what it emits and what it accepts, the output of one lines up with the input of another without any coordinating framework — the wiring is legible rather than assumed. The newer layers of the platform build directly on that property.
Three pages are the fastest way in:
- The Dev Guide — how to put a Gift to work inside an existing AI-dev workflow, aimed at immediate use rather than background reading.
- The Recipes — worked examples of Gifts wired together into larger tools, so the composition is demonstrated rather than asserted.
- Building Differently — the reasoning behind the approach: assembling software from small, honest parts instead of large opaque ones.
The platform also now includes a compiler and Schematic system, and it is deliberately described here as early-stage. A Schematic specifies how Gifts wire together into a working program; the compiler is intended to build from that specification. Per the disclosure on the site, it has been verified but not yet run in practice, so it is presented as in-development rather than finished. The Schematic standard itself is published now; more will follow.
All 96 Gifts are listed below — each name links to its page — to scan for anything useful. Every one is MIT, dependency-free, and standalone.
All 96 Gifts
- Cairn — Redundant git push/clone across independent stores, so your history survives any one going down.
- Callsigns — Readable, paste-safe random IDs (word-word-hash) that drop into branches, URLs, and shells unescaped.
- Census — Counts your TODO/FIXME markers and flags the ones buried where nobody will act on them.
- Conflict — A one-command gate so a file with unresolved merge markers can never land.
- conform — Checks a JSONL stream against a schema you declare and stops at the first bad record.
- Dwell — A decision engine where when you stop deferring is the choice — integer-exact and replayable.
- The Excavation — Enumerates every page of a site so any AI can prove it read all of it.
- Gitlog — Turns git history into one JSON object per commit on stdout, so your questions are one pipe away.
- Grain — Compresses your data against a live random null model to read structure-vs-noise with no set threshold.
- Hunkhole — Catches the function a bad merge or stale tree silently reverted while leaving the file in place.
- Isvalidcsscolor — Decides whether a string is a valid CSS color, identically in Node and the browser.
- Markdown — One Markdown AST, two renderings (HTML + plain text) that can never silently disagree.
- Mint — Hands out IDs that are provably never reused — a retired ID structurally cannot come back.
- Plumb — A status board where every green claim must name a witness that agrees, or it reads UNWITNESSED.
- PNG Text — Pulls text metadata out of a PNG's chunks, refusing to read past anything corrupt.
- EXIF Parser — Reads a photo's camera metadata (incl. GPS) from JPEG EXIF, validating structure before trusting it.
- Reltime — Turns a timestamp into a short human "when" that returns nothing rather than guess on bad input.
- Sha256 — Synchronous SHA-256 in the browser that matches your Node backend byte-for-byte.
- Sudoku — A Sudoku solver that hands you the readable, checkable reasoning, not just the answer.
- Timesheet — Pipe a git log in, get an honest (floor-biased) effort-in-hours estimate out.
- Tracebus — A pub/sub bus where every path is declared and every emission is logged and replayable by trace id.
- The Trellis — A 2-D consistency checker that names the exact cell where a row and column both fail.
- Vclock — Vector clocks over JSONL, so you can tell "A before B" from "genuinely concurrent."
- Verify — Registers an expensive fact with its inputs and re-checks it in a second: FRESH, STALE, or DEAD.
- Ward — An integrity badge that goes solid only when a live witness beneath each cell agrees.
- PDF Text Extractor — Pulls the visible drawn text out of a PDF's content streams, no dependencies.
- PDF Dictionary-Text Extractor — Pulls the text a PDF stores but never draws — form values and annotation notes.
- Skin Config Validator — Type-checks a user-submitted theme config and blocks CSS breakouts before you apply it.
- Inline MIME Parser — Parses a raw email into a structured tree — headers, encodings, multipart — with zero deps.
- l21x-snapshot — A zero-backend save/catalog/archive layer: encode any document to a portable snapshot string.
- forest-title-fit — Picks the largest font size a title still fits at, and wraps instead of ever clipping.
- port — Every small JSONL tool declares its composition verb, so a map or typechecker can read it, not guess.
- map — Folds a folder of port-declaring tools into a composition map: who can feed whom, how densely.
- typecheck — Before you run a tool pipeline, says whether each stage emits what the next accepts, naming the break.
- declare — Turns an ad-hoc shell pipe into a saved, named, re-runnable artifact you can prove current.
- conductor — Runs a declared pipeline under one trace id with a per-stage receipt ledger you can replay.
- derived — Rebuilds a generated file in a sandbox and byte-compares it: is it stale against its source?
- gauntlet — Injects one fault into a copy of your file and checks whether your linter actually catches it.
- amber — Seals a set of files into one content-addressed capsule that breaks loudly if any byte changes.
- timeline — Runs eight soundness checks on a timeline's data before a single pixel is drawn.
- loop21:component-factory — Emits small logic components (counter, toggle, clamp…) as validated, pipeable specs.
- loop21:l21x-snapshot — Deterministic browser document persistence: snapshot, catalog, and export as one file.
- Cruise — Walks a codebase into a ledger of byte-derived facts an LLM can't hallucinate features past.
- Worklog — Folds a repo's history into a "what got done" report grouped by day or author.
- switchboard — A directory-backed message bus that, by construction, can carry a message but never a command.
- Parity — Compares N sibling things against a shared checklist and surfaces exactly where they disagree.
- Text Legibility Gauge — Guesses whether extracted text is human-readable or machine rubble, and how sure it is.
- Branch Splitter — Splits one payload into a declared, closed set of named branches (the open half of ⊗).
- Branch Merger — Folds those branches back to one under a declared policy (the close half of ⊗).
- The Mail-Merge That Won't Lie — Fills a prompt's {{slots}} from a record and fails loud on any missing variable.
- Make The AI Prove It Read The Whole Thing — Shards context so any model can prove it covered every piece.
- range-filter — Keeps only the JSONL records whose fields fall inside the numeric or date windows you declare.
- Your Prompt Goes to Confession — Tells you which of eight constrainable dimensions your prompt left open.
- weir — Runs a pipeline under a real budget (rows/time/bytes) and cuts clean at the wall — never a token budget.
- Your Prompt's Evil Twin — Generates the minimal adversarial rephrase that could flip your prompt's output.
- Ask Three, Trust The Overlap — Folds several model answers into what they agree on, with a declared quorum.
- The Oracle — Reproducible seeded A/B for prompts: every pick re-derivable from a receipt, forever.
- Clause-Trellis — Lays a mega-prompt's clauses on a grid and names which two contradict each other.
- Contract — Walks a JSONL stream against a plain-data schema (never eval'd) and stops at the first breach.
- JSONL-Diff — Tells you what a model's output added, removed, and changed between two runs.
- Palimpsest — Takes your prompt's successive versions and shows which lines are load-bearing vs churn.
- Scrub — Catches a leaked secret by shape before it ships — report, redact, or refuse as a CI gate.
- SVG-sink — Turns a numeric series into a committable, diffable, dependency-free SVG chart.
- Sparkline-sink — Turns a numeric series into one inline unicode sparkline for a log line or table cell.
- Heatmap-sink — Turns (x,y,value) cells into one standalone heatmap SVG, no plotting library.
- Gantt-sink — Turns (start,end,label) tasks into one Gantt SVG, with caller text safely escaped.
- Grid-sink — Places blocks into a grid and renders an SVG, with a declared overflow policy (never silent).
- PPM-raster — Rasterizes a stream of primitives into a committable PPM image, zero dependencies.
- Merkle-fold — Folds a JSONL stream into one tamper-evident Merkle root (RFC 6962), any edit moves it.
- Seance — Recovers lines a later commit deleted — with a secret-scrubber that masks anything dangerous first.
- Histogram-fold — Folds a numeric stream into fixed-width buckets in one pass, order-independent.
- Dedup-filter — Passes a JSONL stream through, dropping every record it has already seen, order preserved.
- Running-stats — Folds a numeric stream into count/mean/variance/stddev/min/max in one stable pass (Welford).
- Topk-fold — Folds a numeric stream into its k largest (or smallest) values with a bounded heap.
- schema-filter — Keeps only the JSONL records that match a declared shape — a shape-checking gate in a pipe.
- Base-n — Converts integers between any base 2–36, exact at any size via BigInt (no 253 cliff).
- Interval-math — Combines ranges with + − × ÷ and returns a bound guaranteed to contain every real result.
- seq-source — Generates a deterministic arithmetic sequence to feed into the fold/filter/transform gifts.
- csv-source — Turns real RFC-4180 CSV into the one-object-per-line JSONL stream the toolkit consumes.
- kv-source — Parses KEY=VALUE config (.env-style) into a uniform JSONL record stream.
- json-source — Streams a top-level JSON array out one element per line for the pipe.
- ndjson-source — Validates and canonicalizes an NDJSON stream into clean JSONL.
- pluck — Reduces each JSONL record to just the fields you name, in order — the SELECT of the toolkit.
- rename — Relabels JSONL fields keeping every value, refusing any rename that would collide two onto one.
- units-convert — Converts length/mass/time/temp/angle and refuses honestly on a category mistake.
- zonecast — Casts a stored time into the wall-clock and calendar day a viewer in another zone actually sees.
- line-source — Turns a text file into a JSONL stream, fixing the trailing-empty, CRLF, and BOM traps.
- ini-source — Parses sectioned INI/.gitconfig config into a section-tagged JSONL record stream.
- jq-lite — jq's common moves (field, index, iterate, pipe) over JSON on stdin, without installing jq.
- uniq-filter — Collapses adjacent duplicate runs in a JSONL stream in O(1) memory — the uniq half of sort|uniq.
- dir-walk — Walks a directory tree into a deterministic, byte-sorted JSONL stream of portable file facts.
- grid-source — Generates a bounded 2-D grid as a deterministic row-major JSONL stream of cells.
- WUPHF — Shapes one message for every channel at once, each with its honest cost — and sends nothing.
- hmac-webhook — Verifies an HMAC-signed webhook in constant time, matching Node's crypto byte-for-byte.
- Life-fold — One Conway step as a fold, closed under its own I/O — a mercury delay line made of live cells.
- Counter-fold — A binary counter's +1 as a fold, closed under its own I/O — the delay line as a counter.
That is the full set. Each Gift stands alone; take whichever are useful and ignore the rest.
[link] [comments]