signals

Official

Reactive, thread-safe state for Vaadin UIs

Authorvaadin
Version1.0.0
Installs0

System Documentation

What problem does it solve?

Vaadin Signals removes the need for manual listener management and brittle update code by providing a reactive, transactional, and thread-safe approach to UI state in Vaadin 25 Flow. It makes it simple to keep component views, element properties, and cross-user shared state consistent and automatically updated while handling lifecycle attach/detach and concurrency concerns.

Core Features & Use Cases

  • Reactive primitive signals (ValueSignal, NumberSignal) and collections (ListSignal, MapSignal, NodeSignal) for representing application state.
  • SignalFactory scoping for IN_MEMORY_SHARED (cross-user, JVM-scoped) and IN_MEMORY_EXCLUSIVE (per-instance) usages, with guidance on when to enable Push.
  • ComponentEffect bindings and computed signals to derive values and bind state to component properties, text, classes, attributes, and styles with automatic lifecycle management.
  • Transactions and atomic update patterns to group changes, use peek() for non-tracking reads, and avoid modifying objects in place.
  • Use cases: shared counters and collaborative widgets, signal-backed form editors, computed derived displays, and element-level bindings for dynamic styling and visibility.

Quick Start

Create a ValueSignal or NumberSignal with SignalFactory (choose IN_MEMORY_SHARED for shared state or IN_MEMORY_EXCLUSIVE for local state), bind it to your components with ComponentEffect.bind or ComponentEffect.effect, and use Signal.runInTransaction for atomic multi-signal updates.

Dependency Matrix

Required Modules

None required

Components

references

💻 Claude Code Installation

Recommended: Let Claude install automatically. Simply copy and paste the text below to Claude Code.

Please help me install this Skill:
Name: signals
Download link: https://github.com/vaadin/claude-plugin/archive/main.zip#signals

Please download this .zip file, extract it, and install it in the .claude/skills/ directory.
View Source Repository

Agent Skills Search Helper

Install a tiny helper to your Agent, search and equip skill from 471,000+ vetted skills library on demand.