28 releases (8 breaking)

Uses new Rust 2024

0.9.0 May 9, 2026
0.7.0 Apr 2, 2026
0.6.0 Mar 10, 2026
0.2.2 Dec 6, 2025
0.1.6 Jul 31, 2025

#1828 in Network programming

Download history 24/week @ 2026-02-18 22/week @ 2026-02-25 33/week @ 2026-03-04 11/week @ 2026-03-11 32/week @ 2026-03-18 19/week @ 2026-03-25 47/week @ 2026-04-01 22/week @ 2026-04-08 65/week @ 2026-04-15 37/week @ 2026-04-22 43/week @ 2026-04-29 114/week @ 2026-05-06 40/week @ 2026-05-13 41/week @ 2026-05-20 37/week @ 2026-05-27

243 downloads per month
Used in 29 crates

MIT license

730KB
19K SLoC

Graphix

Graphix is a statically-typed functional programming language that compiles to reactive dataflow graphs. Unlike React or Vue where reactivity is a library bolted onto the language, Graphix is reactive at the language level — every expression is a node in a live graph, and changes propagate through automatically.

It feels familiar to anyone who knows Haskell, OCaml, or F#: lexically scoped, expression-oriented, with algebraic data types, pattern matching, parametric polymorphism, and first-class functions. It's particularly well-suited for building UIs and working with streaming network data via netidx.

use tui;
use tui::block;
use tui::text;

let counter = count(time::timer(duration:1.s, true));

block(
  #border: &`All,
  #title: &line("My First TUI"),
  #style: &style(#fg: `Green),
  &text(&"Counter: [counter]")
)

tui

Install

cargo install graphix-shell

Requires Rust and clang / libkrb5-dev (Debian/Ubuntu) or clang-devel / krb5-devel (Fedora).

Learn More

graphix-lang.github.io/graphix

Documentation · Discord · GitHub

License

MIT

Dependencies

~35–68MB
~1M SLoC