A signals/slots plus FRP-like library for Java and Objective-C
Java Scala
Failed to load latest commit information.
etc A few Connection-related things. Jan 16, 2015
project Use latest SBT bits. Jan 29, 2014
src Added Signal.next(), Value.changes(), & Value.when(). Aug 1, 2016
.gitignore Git is smart: if project/ contains just a directory target/ and targe… Sep 23, 2011
.travis.yml Travis up-to-dating. Oct 5, 2015
LICENSE The beginnings of a signals/slots + FRP library. Aug 1, 2011
README.md Bump to 1.5.1. Jan 20, 2015
build.sbt Bump to Scala 2.10.0 and SBT 0.12.2. Jan 29, 2013
pom.xml [maven-release-plugin] prepare for next development iteration Aug 1, 2016



React is a low-level library that provides signal/slot and functional reactive programming-like primitives. It can serve as the basis for a user interface toolkit, or any other library that has a model on which clients will listen and to which they will react.

Building (Java)

The library is built using SBT or Maven.

Invoke sbt publish-local to build and install the library to your local Ivy repository (i.e. ~/.ivy2/local).

Invoke mvn install to build and install the library to your local Maven repository (i.e. ~/.m2/repository).

Building (Objective-C)

The Objective-C library is distributed as an Xcode project with no external dependencies. Add react.xcodeproj to your project, add /path/to/react/src/main/objc to your user header search paths, and add #import "React.h" to your project's pre-compiled header.


To add a React dependency to a Maven project, add the following to your pom.xml:


To add it to an Ivy, SBT, or other Maven-repository-using build configuration, simply remove the vast majority of the boilerplate above.

If you prefer to download a pre-built binary, that can be found here:


React is also usable from GWT. Add the jar to your project per the above instructions and add the following to your .gwt.xml file:

<inherits name="react"/>


React is released under the New BSD License. The most recent version of the library is available at http://github.com/threerings/react


Questions, comments, and other communications should be directed to the Three Rings Libraries Google Group.