Skip to content

Repository files navigation

Resonant

The dynamic attention format — text as substrate, reader-led narration, sovereign ambient music.

Resonant is a way to make sustained text-based attention possible in a media environment that has stopped supporting it. Long-form writing is bleeding readers to short-video and audio-first formats — not because the writing is worse, but because the substrate hasn't evolved. You read a 4,000-word essay on essentially the same surface as a 2010 blog. Resonant is what happens when a long piece of text gets a substrate that competes for attention on its own terms.

This repository is the open-source home for the format spec, the reference runtime, the importers that turn existing long-form text into resonants, and the reference reader application. It is Apache 2.0 licensed. The format is the moat; everything else is an interchangeable implementation.

The sovereignty rule

A conformant Resonant implementation honors three layers:

  1. Soundtrack — sovereign over time. Plays uninterrupted regardless of clicks, scroll, narration state, or tab focus.
  2. Narration — reader-led. Plays as ambient sound by default; snaps to a paragraph on click. No karaoke highlight.
  3. Text — primary substrate. Reader-paced scroll. Selectable, accessible, copyable. Always fully functional in silence.

The rule is normative. Implementations that violate it are non-conformant and must not claim the subframe-v1 label. The full normative definition lives in spec/subframe-v1.md (forthcoming).

Quick start

git clone <your-fork-or-mirror>/resonant.git
cd resonant
pnpm install
pnpm dev

pnpm dev fans out to every workspace package and app. The reference reader runs locally; open the URL it prints.

Repository layout

Path Contents
spec/subframe-v1.md Normative spec for the subframe-v1 composition format.
spec/subframe-v1.schema.json JSON Schema for composition.json documents.
spec/conformance-suite/ Fixtures and assertions every conformant implementation must pass.
packages/subframe-core Parser, validator, and TypeScript types. Runs in Node and browser.
packages/subframe-engine-live Browser runtime: mounts a composition to a DOM root and drives the three sovereignty layers.
packages/resonant-import-markdown Markdown → composition.json transform plus a CLI binary.
apps/resonant-reader Reference reader application that consumes the packages end-to-end.
docs/ Long-form documentation, design notes, and RE-Gap recon.
.github/workflows/ CI: package builds, conformance suite, lint, typecheck.

The packages/ and apps/ directories are intentionally empty in this scaffold step. Downstream sequence steps populate them.

Status

Launch 1 in progress. The format spec, reference runtime, markdown importer, conformance suite, and reference reader are being extracted from a working prototype (24 chapters of Manual sobre el Despertar rendering live with the full sovereignty stack). Launch 1 publishes the open format and a public proof of the form the same week.

Subsequent launches add a Reader-Mode-style browser surface for arbitrary long-form text on the web, and an open authoring toolchain so writers other than the prototype's author can publish in the format.

License

Apache License 2.0. See LICENSE for the full text. Copyright © 2026 Rashid Azarang and Resonant contributors.

Contributing

See CONTRIBUTING.md. The short version: the sovereignty rule is non-negotiable, and PRs that break it get bounced. Everything else is up for discussion.

About

An open format for the dynamic attention category — long-form text + reader-led narration + sovereign ambient music

Topics

Resources

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages