Skip to content
Art2link ESB v2.02 LTS HomeDocumentationBlogContact
Get started/The Art2link Manifesto

The Art2link Manifesto

Art2link ESB is built on five refusals. They come from years of building integrations on platforms where the hardest part was never the integration, it was the toolchain. We wrote down what we refused to carry forward, and then built the platform around the list.

Before Art2link, we developed integrations the way everyone did: open Visual Studio, write, compile, deploy, restart, and hope that what worked on the development machine still worked once it landed. The work you did at ten in the morning met reality at ten at night, and when it failed, it failed in production, after the downtime window had already been spent. Every item below is a direct answer to something on that grudge list.

The grudge list open the IDE compile (45 min) deploy and pray restart at midnight couple everything to a schema NEVER AGAIN signed, everyone who ever ran a deployment night

You never open Visual Studio, or any IDE, to build on Art2link ESB. Ports, pipelines, maps, and every line of code the platform accepts, XSLT 3.0 maps, C# pipeline components, C# custom functions, are authored and saved in the portal. The portal is the development environment.

enormous_solution.sln 37 projects loading... src/bin/obj/refs/... yourcompany.art2link.app The portal is the IDE ports · pipelines · maps · C# edit here → runs here nothing to install on your machine

The platform is 100% configurable, and that is a strict rule, not a tendency. Nothing you write requires a build step. Even C# pipeline components and custom functions, including ones that pull in NuGet packages, are saved and run. There is no solution file, no build pipeline, no artifact to produce. If it needs compiling before the platform can use it, it does not belong in the platform.

Building... 12% (45 min remaining) compiling! Save Running same second even C# with NuGet packages

What you save is what runs, the moment you save it. There is no separate deployment step where weeks of work meet the runtime for the first time and lose. The disconnect between writing code and discovering whether it actually works, the one that used to surface as a deployment-night incompatibility, does not exist, because there is nothing between you and the running platform.

THE OLD WAY Written Mon 10:00, works! ? ? ? three weeks of hope Deployed Fri 22:00, boom HERE You save it no gap. literally none. It is running

Saving a change never restarts a service, and never takes the platform down. Changes propagate to the running system live. A restart is downtime by another name, and downtime to apply a change you already finished writing is a tax we refused to pay. On Art2link ESB it is simply not part of the model: there is nothing to restart.

“Have you tried turning it off and on again?” retired. permanently. UPTIME change saved change saved change saved still up

BizTalk was tightly coupled by design, and eventually grew the ESB Toolkit and its itineraries to loosen up. Art2link ESB starts loose and lets you tighten where tightness earns its keep. Two artifacts carry most of that choice:

TYPED tight, by choice source type map types must match, like BizTalk taught you UNIVERSAL loose, the default one map, tried on all mapped unmatched bits? politely ignored maps what matches, ignores the rest

Schemas are optional. In BizTalk a schema is mandatory and defines the message type. Here a message type is just a name, and a schema exists for one purpose only: validation, where you choose to apply it.

Maps come in two modes. A Typed map is keyed on the source message type and behaves the way BizTalk trained you to expect: the types must match. A Universal map runs regardless of the source type, maps whatever matches, and ignores whatever does not, the same spirit as the itineraries, built in rather than bolted on.

Loose by default, tight by choice. Validation and type matching are tools you opt into per flow, not a toll you pay on every message.