DEPLOYANYWAY 1.0 · A REAL WORKFLOW

Fetch the request. Follow the cause. Bring receipts.

An adventure in making things—with Dallas and Benji’s spirit along for the ride.

Start with curiosity. Make room for fun.

Dallas and Benji, our playful, high-energy huskies, inspire the way we approach making things: explore, get excited, follow an interesting question, and enjoy the adventure. A little mischief can be the beginning of a creative idea.

Developers know that feeling, too—the tiny experiment that turns into something useful, the grin when it finally works. DeployAnyway exists to keep that spark in everyday work, with useful tools, original humor and care for the people using what we ship.

Read the Dallas and Benji story → Then follow their spirit into a real workflow below.

Five small tools, one useful routine: keep the request context, explain the failure, own the incident, preserve the exit code, and check the release evidence. The jokes are optional. The facts aren’t.

1. Fetch the request. Guard the context.

doggo-log carries a request ID through an awaited file read and redacts the configured dummy credential before writing.

{"requestId":"benji-42","authorization":"[REDACTED]"}
Dallas fetched the request. Benji checked the config.

AsyncLocalStorage runs in Node. This page shows output from the runnable project, not a browser simulation of a server.

2. Follow the cause. Own the problem.

A real missing file triggers an Error wrapped with a cause. error-translator finds ENOENT and suggests checking the full path. excuse-js drafts the known impact and action without inventing a next-update time.

Caused by: Error [ENOENT]
File or directory not found
Try: Check the full path and the current working directory.

Status: investigating
Current action: Check the cause and restore the configuration file
Next update: Not scheduled
Missing facts: nextUpdate

“No victory zoomies yet.” bro-say renders FAILED, and the command actually exits 1. The healthy request reads a valid file and exits 0. No incident message is posted.

3. Confidence needs receipts.

ship-it-meter checks fresh completed Node tests, c8 coverage and an actual syntax-check build for the same committed source. Then the example executes deliberately broken JavaScript: the build fails and the gate blocks.

Passing build → Gate: PASS; actual collector exit: 0
Broken build  → Gate: BLOCKED; actual collector exit: 1
The receipts say stop. Confidence must wait.

This checks the example project—not your production application. Commit and timestamp metadata are trusted-pipeline claims, not signatures. The demonstration harness returns success only when both expected outcomes occur.

Run it. Keep the useful bits.

Git and Node 22.13+ or 24. Installs the five exact published 1.0.0 packages plus c8 for development.

git clone https://github.com/DeployAnyway/deployanyway.github.io.git
cd deployanyway.github.io/launch
npm ci
npm run demo
npm run receipts:demo

Source, tests and integration notes · Recorded request output · Recorded measured gate output · Short launch post to copy and share

The collector requires clean tracked source and an unchanged Git commit. Commit edits before running it. The final demo receipt file contains the blocked build; run npm run release:receipts to generate a fresh passing bundle. Credentials here are dummy values. Review real diagnostic messages before logging or sharing them.