PlainLogic

Interactive lab · Automation

Automation Lab

Snap together a trigger, some logic, and an action — then press Run and watch the data move through each block. No code, no sign-up.

TRIGGER IF DISPLAY

Watch information change as it moves through your workflow.

The builder

Trigger → logic → action

Click blocks to add them to the chain, click a chain block to configure it, then press Run and watch each block light up as data passes through. Same blocks, same inputs — same outputs, always.

No location

Live blocks need a location. Coordinates stay in this page's memory only — nothing is stored unless you tick the box.

Templates

Blocks

Chain

Deterministic: the same blocks and inputs always produce the same outputs. Live data is the only thing that can differ between runs. If a feed is down or a block needs something it doesn't have, the run stops honestly at that block instead of guessing.

Block settings

Select a block in the chain to configure it.

Data in transit

{}

The shared context every block reads from and writes to, updated after each step.

Run log

  1. readyBuild a chain and press Run. Each step's input and output lands here with a timestamp.

Results

DISPLAY blocks render their result cards here.

This builder grew out of Mini Lab v0.1. Same idea, bigger bench: live weather, alerts, earthquake, and water feeds, a wider block library, configurable blocks, and step-by-step execution with a run log.

Plain-language automation

Three kinds of blocks

Something happens, a decision gets made, something gets done — every workflow is that shape.

TRIGGER LOGIC ACTION
  1. Triggers start the chain.Live Weather, NWS Alerts, Earthquakes, and Water Level fetch real feeds; Timer, Form Input, and Sample JSON/CSV produce data you control.
  2. Logic decides and reshapes.IF is a gate — a false condition stops the chain honestly, right there. The rest read the data and write results back into the shared context.
  3. Actions do something.DISPLAY renders a result card, DOWNLOAD saves a file, SAVE keeps it in your browser, NAVIGATE opens a page.

Why deterministic matters

Same inputs, same outputs — always

No randomness, no model call — just small fixed rules, top to bottom. A chain built today behaves identically tomorrow; only live data can differ. A feed that's down says so instead of inventing numbers.

Behind the build — what powers this experiment
Block architecture
Every block is a plain JavaScript object: a type, a configuration, and a run(context) function. Triggers produce the first data, logic blocks read and annotate a shared context object, and actions consume it. Because blocks are just data, a chain can be described, rebuilt, and re-run exactly the same way every time.
Deterministic execution
The runner walks the chain top to bottom, awaiting each block before starting the next. Block functions are pure with respect to their inputs: the same configuration and the same inputs always produce the same outputs. Execution is animated node by node, and a timestamped log records each step. With reduced-motion preferences, the same steps run instantly with no animation.
Live-data adapters, shared with the Situation Room
The four live triggers call the same /api/live endpoint the Situation Room uses (GET /api/live?source=…&lat=…&lon=…), so feeds, error shapes, and empty states are consistent across the lab. A null data field means the source failed — the block reports it and stops the run instead of guessing.
Local-only storage
Coordinates live in the page's memory while it is open, and are only written to your browser's localStorage if you tick the save box. The SAVE block writes results to localStorage under a key you choose. No accounts, no tracking — your chains are stored only in this browser. The one thing that leaves the tab is a live trigger's request: when a live-data block runs, your coordinates are sent to the site's /api/live proxy to fetch the feed, exactly as the row above explains.
No AI, no keys
There is no language-model call in this page and no API key anywhere in the frontend. The server-side proxy keeps provider keys out of the browser entirely. What you see is everything there is: small, inspectable, deterministic rules.

Questions

Fair questions

Do I need to know how to code?

No. You build by clicking blocks: a trigger like Live Weather, a logic step like "rain chance greater than 60", and an action like Display. Settings are plain-language fields and dropdowns. The only syntax to learn is {{placeholders}} for message templates — for example, {{rain_max}} drops the max rain chance into your message — and the builder shows you which fields are available.

Does it use AI?

No. There is no language model and no AI API anywhere in this lab. Every block is a small deterministic rule: the same blocks with the same inputs always produce the same outputs. The only thing that changes between runs is the live data itself.

What happens if a live feed is down?

The block that needs the feed reports "feed unavailable" and the run stops honestly at that block. Nothing downstream runs on made-up data, and nothing else on the page breaks. Feeds arrive through the same /api/live proxy the Situation Room uses.

Is my location stored?

No. Your coordinates live in the page's memory while it is open. They are only saved to your own browser's localStorage if you tick the "Remember in this browser" box, and they are sent only to the live-data proxy to fetch the feeds you asked for.

Is it free?

Yes. The Automation Lab is free to use as often as you like — no account, no sign-up. Your chains are never uploaded; the SAVE block stores results in your browser's local storage. PlainLogic may introduce optional accounts or paid features in the future, but the core labs are free to use today.

Keep exploring

More from the lab

Live data

Situation Room

The live feeds this lab's triggers read from — weather, alerts, earthquakes, radar, and more — in a full operations console.

New · interactive lab

Data Pipeline Lab

The next bench over: take raw feeds, clean and reshape them, and watch each stage of a pipeline transform the data.

The lab

PlainLogic home

Games, experiments, the compact Mini Lab v0.1, PDF tools, and the blog — the full bench.