Skip to main content

Datalayer

Become a Sponsor

⚛️ Reactor

Application builders hit a wall when a feature spans the browser and the server: frontend and backend plugin systems usually disagree about discovery, dependencies, lifecycle, compatibility, and enablement. Teams duplicate those contracts, hard-wire optional features into the host, and must coordinate rebuilds and deployments just to add, remove, or replace one capability.

Reactor gives JavaScript frontends and Python backends one extensibility model, inspired by VS Code, Eclipse (OSGi), and other proven plugin systems.

Reactor Example Music

Reactor provides two sibling packages:

  • @datalayer/reactor (TypeScript): Plugin runtime with a framework-agnostic core and separate React integration.
  • datalayer_reactor (PyPI distribution, imported as reactor): FastAPI + pluggy plugin reactor for modular extensibility.

Both tiers implement the same architecture. That is the point of writing it down once: a host that lists, describes, groups or draws plugins should never have to ask which side of the wire one came from.

📖 Documentation

reactor.datalayer.tech — everything is there, and only there. Source in docs/.

Why Reactor what this targets that a hook callback does not
Architecture the seven constructs, and the two distinctions the model rests on
Get started in TypeScript · in Python install, and a plugin running
TypeScript runtime plugins, lifecycle, contribution points, extensions, activation, lazy loading, remote plugins, allowed origins, React bindings, signals
Python runtime manifests, contribution points, extensions, tenants, the HTTP API
Across the tiers what a plugin may declare about its counterpart, and why it is not enforced
Federation plugins that arrive from a URL, containers, and where one is allowed to come from
Python-packaged extensions one pip install shipping both tiers, the frontend built into the wheel

🎵 The music store, running in the page

reactor.datalayer.tech/examples/music/demo — a store assembled entirely from plugins, with a switch per plugin on both tiers. Untick one and watch what it contributed leave.

Repository layout

Path What is in it
src/ TypeScript package source for @datalayer/reactor
reactor/ Python package source for datalayer_reactor
plugins/ reusable plugins shipped alongside the runtime — the manager and the graph
examples/ the demos, including the music store
docs/ the documentation site

Develop

# TypeScript: the runtime and the bundled plugins.
npm install
npm run build
npm test
npm run typecheck

# Python.
python -m venv .venv
source .venv/bin/activate
pip install -e .
python -m reactor

# The music example, both tiers.
make music

# The documentation site.
cd docs && make install && make start

Release

See RELEASE.md.

Metadata

Release files for datalayer-reactor 1.3.5

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for datalayer-reactor 1.3.5
File Size Uploaded Provenance Actions
datalayer_reactor-1.3.5.tar.gz 1.5 MB With provenance Details for datalayer_reactor-1.3.5.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for datalayer-reactor 1.3.5
File Interpreter ABI Platform Actions
datalayer_reactor-1.3.5-py3-none-any.whl Python 3 none any Details for datalayer_reactor-1.3.5-py3-none-any.whl

Total release size: 1.6 MB

Release files / datalayer_reactor-1.3.5.tar.gz

Download URL datalayer_reactor-1.3.5.tar.gz
Size 1.5 MB
Tags Source
SHA-256 checksum
How to use checksums
7b38ff1cbe5f3bed52db62600face5498fa9218d3cb65eca65985c5f008a5ccb
BLAKE2b-256 checksum
How to use checksums
8fd3d0091e45da1973fdb6785905f2316fbd06e0844c313bc00b304736e87376
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 7, 2026.

Transparency log

Release files / datalayer_reactor-1.3.5-py3-none-any.whl

Download URL datalayer_reactor-1.3.5-py3-none-any.whl
Size 87.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
fcfd23f9b69f9b6336e3f0a7354e6b54e28c0feaf96020834cec5bdc479cd514
BLAKE2b-256 checksum
How to use checksums
c78b8212cb1ced86e359c5265f5a2c80f70c8aea5813347f11f8cbb2fb62975f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 7, 2026.

Transparency log

Security for datalayer-reactor 1.3.5

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

Both files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for datalayer_reactor-1.3.5.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 7, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page