IDE auto-completion
ArkFlow publishes the JSON Schema for the engine configuration so editors can
validate configurations and offer field-level completion while you type. The
schema embeds every registered component's configuration schema, so completion
works per type: — pick kafka, and your editor offers brokers, topics,
and consumer_group.
Download the schema
The schema for the current development version is published with the documentation:
config-schema.json— full engine configuration schema (also embedded as a site asset)
It is generated from the engine itself and snapshotted by CI: if the engine's configuration surface changes, the committed asset must be regenerated or the build fails. You can also emit it locally at any time:
./target/release/arkflow schema > arkflow.schema.json
Editor setup
Visual Studio Code (YAML extension)
Install the YAML extension, then associate the schema with ArkFlow configuration files. Either add a modeline comment at the top of the configuration file:
# yaml-language-server: $schema=https://arkflow-rs.com/config-schema.json
Or map it globally in your user or workspace settings.json:
{
"yaml.schemas": {
"https://arkflow-rs.com/config-schema.json": ["arkflow.yaml", "arkflow.yml"]
}
}
JetBrains IDEs
Enable JSON Schema mappings under Settings → Languages & Frameworks →
Schemas and DTDs → JSON Schema Maps (or use the
File Watchers plugin
with a YAML schema provider), pointing at
https://arkflow-rs.com/config-schema.json.
Offline use
Point your editor at a locally generated schema instead of the published URL:
./target/release/arkflow schema > arkflow.schema.json
# yaml-language-server: $schema=./arkflow.schema.json
What the schema covers
- The top-level structure:
logging,health_check,streams, andjobs. - Every registered component per kind (input, output, processor, buffer,
codec, temporary) as a
type-discriminated union, including each component's individual configuration fields and examples. - The declarative
jobsstructure executed by the unified kernel.
The authoritative listing of registered components is the component inventory; each component page under Components documents behavior in depth.