Haskell FRP

Open-source Haskell projects categorized as FRP | Edit details

Top 23 Haskell FRP Projects

  • GitHub repo reflex

    Interactive programs without callbacks or side-effects. Functional Reactive Programming (FRP) uses composable events and time-varying values to describe interactive systems as pure functions. Just like other pure functional code, functional reactive code is easier to get right on the first try, maintain, and reuse. (by reflex-frp)

    Project mention: Why Do We Need Transpilation into JavaScript? | dev.to | 2021-04-05

    At present, here at Typeable we develop frontend in Haskell and use the web framework Reflex and the functional reactive programming (FRP). The source code in Haskell is transpiled into the JavaScript code using GHCJS.

  • GitHub repo streamly

    Dataflow programming and declarative concurrency

  • GitHub repo reactive-banana

    Library for functional reactive programming in Haskell.

  • GitHub repo reflex-dom

    Web applications without callbacks or side-effects. Reflex-DOM brings the power of functional reactive programming (FRP) to the web. Build HTML and other Document Object Model (DOM) data with a pure functional interface.

    Project mention: Comparing Elm with Reflex | dev.to | 2021-03-22

    dyn allows “using” a dynamic widget. The returned event activates each time the dynamic changes.

  • GitHub repo Yampa

    Functional Reactive Programming domain-specific language embedded in Haskell, for programming efficient hybrid (mixed discrete-time and continuous-time) systems.

  • GitHub repo haskanoid

    A breakout game in Haskell using SDL and FRP, with Wiimote and Kinect support.

  • GitHub repo keera-hails-reactive-htmldom

    Keera Hails: Haskell on Rails - Reactive Programming Framework for Interactive Haskell applications

  • GitHub repo reflex-vty

    Build terminal applications using functional reactive programming (FRP) with Reflex FRP.

    Project mention: Building Rich Terminal Dashboards | news.ycombinator.com | 2021-02-15

    There's a slick little Haskell library that does something similar called reflex-vty:


    One thing neither of these libraries appear to have done yet that I would really like is create a more compact window rendering. Currently each window gets a 1-character border. What I would like is something that saves space by collapsing adjacent windows' borders into a single character instead of having two redundant borders next to each other. Of course I get why they do it the way they do, but terminals are often more constrained for space and with complex UIs you can lose a fair amount due to these unnecessary borders. That would be the next thing I'd hack on to improve these kinds of libraries. But alas...too many fun projects to hack on and not enough hours in the day.

  • GitHub repo dunai

    Classic and Arrowized Functional Reactive Programming, Reactive Programming, and Stream programming, all via Monadic Stream Functions

  • GitHub repo rhine

    Haskell Functional Reactive Programming framework with type-level clocks

  • GitHub repo netwire

    FRP library

  • GitHub repo reflex-jsx

    Use jsx-like syntax in Reflex

  • GitHub repo euphoria

    Dynamic network FRP with events and continuous values

  • GitHub repo reactive-bacon

    FRP (functional reactive programming) framework inspired by RX and Iteratee

  • GitHub repo reflex-dom-contrib

  • GitHub repo essence-of-live-coding-gloss

    Universal Live Coding & Functional Reactive Programming Framework

  • GitHub repo AFSM

    Arrowized functional state machines

  • GitHub repo titan

    Testing Infrastructure for Temporal AbstractioNs

  • GitHub repo spice

    An FRP-based game engine written in Haskell.

  • GitHub repo glazier

    Command interpreter using Continuation monad and variants (by louispan)

  • GitHub repo glazier-react

    Haskel bindings to React

  • GitHub repo ordrea

    Push-pull implementation of discrete FRP with totally-ordered switchers

  • GitHub repo drClickOn

    Code accompanying the paper "Monadic Functional Reactive Programming"

NOTE: The open source projects on this list are ordered by number of github stars. The number of mentions indicates repo mentiontions in the last 12 Months or since we started tracking (Dec 2020). The latest post mention was on 2021-04-05.


What are some of the best open-source FRP projects in Haskell? This list will help you:

Project Stars
1 reflex 930
2 streamly 592
3 reactive-banana 455
4 reflex-dom 316
5 Yampa 307
6 haskanoid 249
7 keera-hails-reactive-htmldom 160
8 reflex-vty 120
9 dunai 118
10 rhine 73
11 netwire 52
12 reflex-jsx 51
13 euphoria 50
14 reactive-bacon 50
15 reflex-dom-contrib 48
16 essence-of-live-coding-gloss 37
17 AFSM 17
18 titan 16
19 spice 15
20 glazier 12
21 glazier-react 11
22 ordrea 11
23 drClickOn 10