A small library,
maintained for over a decade.
functional-reactive is a focused, nano-sized library that brings functional and reactive programming primitives to Core Java. It is built and maintained by one engineer — independently, in the European Union, under EUPL 1.2.

Who maintains this
Hi, I'm Sven Ruppert. I started functional-reactive in
2013 as a small set of helpers I kept rewriting from project to project — a
Result type with a reason for failure, a way to lift throwing methods
out of try/catch, a few tuples that worked better than
ad-hoc Object[]. Over the years it grew into the library you see now.
I've been writing Java in production for over 20 years, across enterprise platforms, regulated industries, and a long stint at JFrog as a Developer Advocate before going independent. Today I split my time between this library, jSentinel (a Core-Java security library), consulting engagements, and a YouTube channel where I publish deep-dives on functional Java and the JVM.
I believe in tools that respect the user: small surface area, no magic, no surprise behaviour, and licences that don't pivot. That's why functional-reactive ships under EUPL 1.2, has zero runtime dependencies beyond the JDK, and stays compatible with JDK 8 as the baseline.
What the library tries to be
Small surface area
Every public class is on one page in the docs. You can read the entire library in an afternoon. If a feature doesn't earn its keep, it doesn't go in.
JDK only, no runtime deps
Adding this library to your project doesn't pull in 30 transitive dependencies. Tests use Hamcrest; the production code uses nothing but the JDK.
JDK 8 baseline
Many production codebases still target JDK 8. Records, sealed classes and
pattern matching are great — but they don't gate basic usability. A
module-info.java is included for JPMS users on JDK 9+.
License that stays
EUPL 1.2. Permanently. No source-available pivots, no rug-pulls. If sponsorship ends, the licence stays.
Other projects & channels
Background, talks and ongoing projects.
A focused security library following the same minimal-deps philosophy.
Funktionale & reaktive Patterns auf Deutsch — Live-Coding und Erklärungen.
Functional Java deep-dives in English — same topics, English audience.
Questions, ideas, problems?
For library-specific issues, open a ticket on GitHub. For consulting or sponsorship, drop me an email.