jellyflow 0.2.0

User-friendly facade for the headless Jellyflow graph engine.
Documentation

Jellyflow

jellyflow is the user-friendly facade crate for the headless Jellyflow graph engine.

It re-exports the lower-level crates under stable module names:

  • jellyflow::core for document data, IDs, graph operations, and interaction primitives;
  • jellyflow::layout for optional headless layout engines and layout discovery metadata;
  • jellyflow::runtime for the headless store, schema/profile pipeline, rules, conformance helpers, and renderer-neutral adapter contracts.

Use this crate when you want one dependency for application or adapter code. Depend on jellyflow-core, jellyflow-layout, or jellyflow-runtime directly when you need a narrower dependency boundary. For automatic layout, start with LayoutPresetBuilder::workflow(), LayoutPresetBuilder::tree(), LayoutPresetBuilder::mind_map(), or LayoutPresetBuilder::freeform(), then pass the built LayoutEngineRequest to the runtime layout facade.

use jellyflow::prelude::*;

let store = NodeGraphStore::new(
    Graph::new(GraphId::new()),
    NodeGraphViewState::default(),
    NodeGraphEditorConfig::default(),
);

assert_eq!(store.graph().nodes.len(), 0);