gitwtfhub

wtf is red?

amiorin/red — explained in plain English

Analysis updated 2026-05-18

2TypeScriptAudience · ops devopsComplexity · 4/5Setup · hard

TL;DR

A TypeScript and Bun library for building command line tools that bring servers and infrastructure to a described state, safely, even if run more than once.

Mindmap

mindmap
  root((repo))
    What it does
      Idempotent workflows
      Step by step engine
      Template scaffolding
    Tech stack
      TypeScript
      Bun
      OpenTofu
      Ansible
    Use cases
      Build a devops CLI
      Provision cloud infrastructure
      Configure servers over SSH
    Audience
      Developers
      Ops engineers
    Status
      Not yet on npm
      Pin to git version

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Why would anyone build with this?

REASON 1

Build a custom command line tool that safely re-applies a desired infrastructure state

REASON 2

Chain small workflow steps together with automatic parallel execution and clean failure handling

REASON 3

Provision cloud infrastructure using bundled OpenTofu integration

REASON 4

Configure servers over SSH using bundled Ansible integration

What's in the stack?

TypeScriptBunOpenTofuAnsibleYAML

How it stacks up

amiorin/red4ssh1/mine-sweeperachawla19/intuitcode-extension
Stars222
LanguageTypeScriptTypeScriptTypeScript
Last pushed2026-01-31
MaintenanceMaintained
Setup difficultyhardmoderatemoderate
Complexity4/52/54/5
Audienceops devopsvibe coderdeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you spin it up?

Difficulty · hard Time to first run · 1h+

Full examples need real cloud accounts, Docker, or other infra tools, offline dry-run mode works without them.

License details are not stated in the README excerpt.

Wtf does this do

red is a code library, built with TypeScript and the Bun runtime, for developers who want to build their own command line tools for managing infrastructure and servers. The idea behind it is that you describe the state you want your systems to end up in using a YAML file, and red runs a workflow, a series of connected steps, that gets things to that state. Running the same workflow twice should not cause problems, it should just confirm the state is already correct, which is what the README means by idempotent. A workflow in red is built from small steps, each one a simple function that takes in some data and returns updated data, and the library handles chaining these steps together, running independent steps at the same time when it can, and cleanly stopping a workflow if one branch fails. It also lets you attach extra behavior to any step, such as running something before or after it, without changing the step itself. On top of this, red bundles support for generating files from templates, and for working with two other well known infrastructure tools, OpenTofu for provisioning cloud infrastructure and Ansible for connecting to and configuring servers over SSH. The project ships with a handful of worked examples, including setting up a ZooKeeper cluster, that show a small command line script creating, dry running, and deleting a set of resources defined in a YAML file. Some of the more advanced examples need real cloud accounts or tools like Docker to actually run, but most have an offline dry run mode that works without them. The project is not yet published as an official package on npm, so anyone wanting to use it right now needs to point their own project at a specific pinned version straight from the git repository rather than an official release. A full written specification of how the library is supposed to behave is included in the repository.

Yoink these prompts

Prompt 1
Help me set up a red workflow that provisions a ZooKeeper cluster using OpenTofu and Ansible
Prompt 2
Explain how red's wireFn and nextFn functions define a workflow graph
Prompt 3
Walk me through pinning a git dependency on red since it is not yet published to npm
Prompt 4
Show me how to write a red.yml desired state file for my own infrastructure

Frequently asked questions

wtf is red?

A TypeScript and Bun library for building command line tools that bring servers and infrastructure to a described state, safely, even if run more than once.

What language is red written in?

Mainly TypeScript. The stack also includes TypeScript, Bun, OpenTofu.

What license does red use?

License details are not stated in the README excerpt.

How hard is red to set up?

Setup difficulty is rated hard, with roughly 1h+ to a first successful run.

Who is red for?

Mainly ops devops.

View the repo → Decode another repo

This repo across BitVibe Labs

Don't trust strangers blindly. Verify against the repo.