Skip to content

Graph Scheduler

Graph Scheduler answers one question about a dependency graph: what is runnable now? Given the nodes, their dependency edges, and each node’s status, it computes the readiness frontier — the nodes whose prerequisites are satisfied — and pulls the next runnable work, with rules, ordering, and goal-direction.

It is a small, layered, zero-dependency library. The engine reasons over the graph and status alone; it never runs your work or touches the outside world.

Layered so dependencies point down. The whole library is zero-dependency.

ImportSubpathWhat it is
graph-scheduler.The package root — re-exports the layers and the root getReady engine.
graph-scheduler/graph./graphThe immutable DAG core: nodes, edges, dependency structure.
graph-scheduler/tracker./trackerReadiness tracking: which nodes are runnable given completed dependencies.
graph-scheduler/pull./pullThe pull surface: draw the next runnable node from the tracker.

The API Reference section in the sidebar is generated directly from the TypeScript source, so it always matches the shipped surface. It fills in as each layer lands.