Getting started
Publish your first event
Create a local Arc workspace, declare an event schema, and receive a typed event in a worker.
Create a workspace
Initialize
Create a workspace and accept the local-only defaults.
shellarcctl init northline-orders cd northline-ordersStart
Run Arc Runtime in the foreground so delivery logs remain visible.
shellarcctl devInspect
Confirm that the runtime and local stream are healthy.
shellarcctl status
Declare an event
src/events.ts
import { event } from "@arcwell/atlas";
export const orderAccepted = event("order.accepted", {
orderId: "string",
region: "string",
});Publish and receive
src/index.ts
import { arc } from "@arcwell/atlas";
import { orderAccepted } from "./events";
await arc.publish(orderAccepted, {
orderId: "ord_7K2M",
region: "north",
});Arc validates the payload before appending it to the local stream. Invalid payloads fail at the producer and never enter delivery.