LOOMWELD

Your data arrives as loose thread. It leaves as cloth.

Loomweld is a fabric engine. It draws every stream, table, and log you produce onto one warp, weaves them together at the crossing points, and hands your models a single continuous cloth to wear.

Scroll — the loom is threaded

One loom, three motions.

Everything Loomweld does is one of three movements, borrowed from four thousand years of textile engineering and pointed at your infrastructure.

Spin

Sources become threads. Each record is drawn from its source, carded for type and shape, and spun with its provenance twisted into the fiber. Pull any thread in the finished cloth and it leads back to the exact row, event, or file it came from.

Weave

Threads cross in flight. Where two sources describe the same thing — a customer, a shipment, a sensor — the loom lifts the matching threads and passes the shuttle between them. The join happens at the crossing point, not in a nightly batch.

Wear

Models wear the fabric. Nothing downstream queries eleven systems and hopes. SQL, vector search, and agents all cut from the same cloth — and every answer carries the thread it was cut from, so you can check the weave behind any claim.

Five structures, one warp.

Every Loomweld deployment shares the same warp — your sources, held under tension. What changes is the structure of the weave.

Plain the batch weave

One over, one under, every thread accounted for. Plain is the deterministic weave for scheduled work — full-fidelity ingestion with a checkable crossing for every single record.

structure  1/1 over-under
cadence   scheduled
guarantee exactly-once

Twill the streaming weave

Each pass advances one thread, so the pattern climbs in a continuous diagonal. Twill keeps the cloth growing while you read it — events land woven, not queued, and the fabric never stops to rewind.

structure  2/1 diagonal
cadence   continuous
lag p99   240 ms · bench loom

Satin the query face

Long floats and hidden crossings give satin its smooth face. This is the surface your analysts touch: the joins are already underneath, so a question that used to take four CTEs is a straight cut.

structure  4/1 float
interface SQL · vectors · agents
face      read-optimized

Jacquard the programmable weave

Punch your own pattern cards. Jacquard is the transform layer: declare a figure in code and the loom raises exactly the threads that produce it. Every pattern is versioned, reversible, and replayable against the same warp.

structure  figured
language  TypeScript · SQL
property  reversible transforms

Selvage the woven edge

A selvage is the edge a fabric finishes itself with — it cannot fray, because the boundary is part of the weave. Masking, retention, and residency are threads in the cloth here, not a gate bolted on in front of it.

structure  edge-bound
policy    masking · retention · residency
audit     woven in place

What we hold taut.

Tension is honesty.

A thread under tension cannot hide a knot. Every transform in the weave is inspectable exactly where it happens — nothing runs inside a black shed, and a surprising answer can always be traced to the crossing that produced it.

No lossy joins.

The loom never trims a thread to force a match. When two sources disagree about the same entity, the disagreement is woven in and visible — not silently resolved by whichever system wrote last.

The fabric remembers.

Provenance is spun into the fiber, not stapled on afterward. Any answer, any aggregate, any embedding can be unraveled back to the source records it was drawn from, in one motion.

The third tenet is not a promise; it runs. One figure cut from the bench cloth — the ninety-day spend of customer 7731, $412.06 — unraveled into the source threads that made it, in one motion:

wt-04481postgres · orders — row 48112 — +$186.00
wt-04482postgres · orders — row 48739 — +$154.50
wt-09216stripe · charges — ch_9f42a — +$96.56
wt-09217stripe · refunds — re_0c118 — −$25.00
wt-11834s3 · events/2026-07-14.parquet — offset 90211 — the device_id crossing that binds ch_9f42a to customer 7731

186.00 + 154.50 + 96.56 − 25.00 = 412.06. The figure re-weaves from its threads exactly; each thread names the row it was spun from; the last thread is the join itself, held on record like any other fiber. Bench loom, August 2026.

Loomweld is a design study — a fictional fabric engine, woven to show how this category should feel. The numbers on this page come from our bench loom, not from customers, because there are none. The weave around you is real, though: it has been running the whole time you were reading.

Threading the loom.

A weave is declared, not scripted. You name the warp, choose a structure, and finish the edge — the loom plans every lift and pass itself.

Threadconnect sources; each becomes a typed, provenance-bearing thread.
Draftdeclare the pattern — structure, entity weft, selvage policy.
Weavethe loom runs; crossings happen in flight, under tension.
Cutship shapes from the cloth — views, cohorts, embeddings.
import { loom } from '@loomweld/warp'

const fabric = await loom.weave({
  warp: [postgres('orders'), s3('events/*.parquet'), stripe()],
  weft: entity('customer').match('email', 'device_id'),
  structure: twill({ advance: 1 }),
  selvage: policy('pii').mask().retain('400d'),
})

// cut a shape from the cloth — provenance included
const cohorts = await fabric.cut(shape('weekly-cohorts'))
cohorts.thread(0).unravel()
// → orders row 48112, woven 2026-08-04T14:02:11Z

The cloth is ready.

Bring loose thread — a warehouse, a queue, a folder of logs nobody admits to owning. We will have it on the warp by Friday.

hello@loomweld.ai
The curtain only parts for people who scrolled the whole loom.