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.
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.
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.
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.
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.
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.
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:
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.
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.
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