Experiments
Experiments are active prototypes. They are useful for exploring directions the project may take, but they are not the default packages to install for app code.
If you are building an app, start with Install Starbeam and the Framework guides. If you are looking for public API orientation, use Reference.
How to read experiments
Section titled “How to read experiments”- Treat APIs as provisional.
- Expect README examples to lag behind source and tests.
- Prefer current source and tests over older examples.
- Do not treat experimental packages as compatibility commitments.
- Use Archive for historical notes and Advanced for current implementor orientation.
Current experiments
Section titled “Current experiments”@starbeamx/store
Section titled “@starbeamx/store”@starbeamx/store explores reactive table, query, grouping, and aggregation
APIs. It is a public experiment, not the default way to model app state.
Useful for exploring:
- table-shaped data;
- reactive queries and filters;
- grouping and aggregation over changing rows.
Current runtime exports include Table, Query, Filter, Average, and
Sum. Type exports include Aggregator, TableRows, and RowTypeFor.
Source material:
Caution: the README is example-heavy and may lag current source APIs. Use it for orientation, not as a stable reference.
@starbeamx/vanilla
Section titled “@starbeamx/vanilla”@starbeamx/vanilla explores a minimal DOM renderer and reference implementation
for Starbeam-backed rendering without a framework adapter.
Useful for exploring:
- how Starbeam can drive text, attributes, elements, and fragments;
- renderer ideas without React, Preact, Ember, Vue, or Svelte;
- small implementation examples for people studying render integration.
It is not intended to be a full app framework. App authors should normally use a framework adapter.
Source material:
Not the stable path
Section titled “Not the stable path”Experiments can become future public APIs, stay as examples, or disappear. They are intentionally separate from the stable app-author path.
For stable docs, use: