Accumath

Open source

accu_book

Headless notebook core: cells, dependency graph, jobs, and save files. Free and open source, built by the Accumath team for the community.

About

The headless core of a local notebook, written in Rust: cells and documents, undo and redo, an explicit dependency graph with stale tracking, a local job queue, a plug-in engine interface, and plain-text .accu save files. It has no network kernel and no hidden state. It has no user interface of its own, and a host program supplies the engine that evaluates cells.

Current version 1.0.0 · License MIT OR Apache-2.0

accu_book on crates.io · Source on GitHub

Built and tested (1–13)

63 tests pass on version 1.0.0. An item is listed here only when it is built, has tests, and those tests pass.

  1. 1Notebook document model (code and markdown cells with IDs and metadata; insert, move, edit, remove)
  2. 2Content hashes (BLAKE3) for each cell and the whole notebook
  3. 3JSON round-trip that preserves IDs, order, sources, and metadata
  4. 4Undo and redo history with a depth limit
  5. 5Explicit cell dependency graph (cycles, self-edges, and unknown cells rejected; dependency-ordered execution)
  6. 6Stale tracking (editing or removing a cell marks everything downstream stale)
  7. 7Local job queue with one job at a time, cancellation, and typed failures
  8. 8Plug-in engine interface (simplify, solve, LaTeX output, assumptions) for a host-supplied engine
  9. 9Session layer tying edits, jobs, runs, and undo together
  10. 10One status per cell (idle, stale, queued, running, ready, failed)
  11. 11Explicit dependencies by default, with optional inference, saved in the file
  12. 12No stale variables: a cell’s old results are cleared when it is edited, removed, or re-run
  13. 13Plain-text .accu save and load, with bad files rejected

Still to build (14–16)

  1. 14C ABI with a generated C header
  2. 15Python package
  3. 16Example C host with tests

All open-source projects Buy a pre-release Accumath license — $25+