The example dataflow pulled opencv-video-capture and pyarrow-sender from dora-hub, needed a webcam, and left `bbox` unwired because every bbox source is a detector. examples/source.py emits an animated frame, the box around the square in it, and a caption, so the dataflow exercises all three inputs with nothing outside this checkout. SOURCE_FRAMES bounds the run, which lets CI run the dataflow headless rather than only validate it. Drops the dora-zed and dora-yolo wirings from the README and trims AGENTS.md to what the code and README do not already say. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018WLVZCFFcCH1EpTXGfS9aD
35 lines
1.0 KiB
YAML
35 lines
1.0 KiB
YAML
# The repository's own example, and its end-to-end test: a synthetic source
|
|
# feeding the viewer. Everything it needs is in this checkout -- no camera, no
|
|
# detector, no network -- so it is also what CI runs.
|
|
#
|
|
# Both nodes are built from the checkout with `path:` + `build:`, which is what
|
|
# lets `dora validate` pick up the typed contract in dora-node.yml. A consumer
|
|
# wires the viewer from a tag instead -- see README.md.
|
|
#
|
|
# Run it with `--uv` so every node gets its own managed environment.
|
|
strict_types: true
|
|
|
|
nodes:
|
|
- id: source
|
|
path: examples/source.py
|
|
# The source needs dora-rs, numpy and pyarrow; installing the project gives
|
|
# it exactly the versions pinned in uv.lock.
|
|
build: pip install .
|
|
inputs:
|
|
tick: dora/timer/millis/33
|
|
outputs:
|
|
- image
|
|
- bbox
|
|
- text
|
|
output_types:
|
|
image: std/core/v1/UInt8
|
|
text: std/core/v1/String
|
|
|
|
- id: plot
|
|
path: dora-plot
|
|
build: pip install .
|
|
inputs:
|
|
image: source/image
|
|
bbox: source/bbox
|
|
text: source/text
|