From 164a325ca17ac260a7021335c91bd9c7a360d457 Mon Sep 17 00:00:00 2001 From: Claas Date: Tue, 14 Jul 2026 22:21:49 +0200 Subject: [PATCH] Add support for streams --- CLAUDE.md | 2 +- afterglow-macros/src/lib.rs | 449 +++++++++++++++++++++++++++----- afterglow/README.md | 46 +++- afterglow/examples/axum_demo.rs | 35 ++- afterglow/src/escape.rs | 3 + afterglow/src/lib.rs | 36 +-- afterglow/src/node.rs | 110 +++++++- afterglow/src/render.rs | 3 + afterglow/src/shell.rs | 180 ++++++++++--- afterglow/src/stream.rs | 142 ++++++---- afterglow/tests/macro.rs | 148 ++++++++++- afterglow/tests/streaming.rs | 222 +++++++++++++++- 12 files changed, 1179 insertions(+), 197 deletions(-) diff --git a/CLAUDE.md b/CLAUDE.md index 7579509..f1faa66 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -6,7 +6,7 @@ This file provides guidance to Claude Code (claude.ai/code) when working with co Cargo workspace (`afterglow`, `afterglow-macros`, `supernova`, `supernovi`, `web-shove`) plus a standalone frontend in `app/` that is **not** part of the workspace. -- **`afterglow/`** + **`afterglow-macros/`** — Suspense-style streaming HTML templating: trees with `Node::Pending` futures render as a shell with ``/`…` placeholders, backfilled by streamed `