• Stars
    star
    140
  • Rank 261,473 (Top 6 %)
  • Language
    Haskell
  • License
    BSD 3-Clause "New...
  • Created over 5 years ago
  • Updated 6 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

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

reflex-vty

Haskell Hackage BSD3 License

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

Example Animation

Feature requests, pull requests, and other feedback are welcome and appreciated (see the contribution guide). This library is still experimental, so big changes are possible!

How to Build

With reflex-platform

Enter a nix-shell for the project:

git clone https://github.com/reflex-frp/reflex-vty.git
cd reflex-vty
nix-shell

From within the nix-shell you can:

  • Run the example: cabal repl example
  • Load the library in the repl: cabal repl reflex-vty
  • Build the example executable: cabal build example
  • Build the docs: cabal haddock
  • Run ghcid for immediate compiler feedback when you save a .hs file: ghcid -c "cabal repl reflex-vty --ghc-options=-Wall"
  • etc.
Selecting a compiler

When entering the nix-shell, you can select from the following compilers: ghc-8.10.7 and ghc-9.4.3. By default, ghc-8.10.7 is selected. To enter a shell with ghc-9.4.3, run:

nix-shell --argstr compiler ghc943

You may need to run cabal clean and cabal configure -w ghc-9.4.3 if you were previously working on the project with a different compiler.

With cabal

Please see the tested-with field of the cabal file for known-compatible versions of GHC.

From the reflex-vty project directory:

# nix-shell -p cabal-install binutils icu # for nix users
cabal new-configure
cabal new-build # to build the library and example
cabal new-repl # to enter a repl for the library
cabal new-repl example # to enter a repl for the example executable

More Repositories

1

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.
Haskell
1,071
star
2

reflex-platform

A curated package set and set of tools that let you build Haskell packages so they can run on a variety of platforms. reflex-platform is built on top of the nix package manager.
Nix
719
star
3

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.
Haskell
357
star
4

reflex-examples

See Reflex FRP in action with tinker-friendly code samples you can run yourself.
Haskell
79
star
5

reflex-dom-contrib

Haskell
50
star
6

reflex-native

Framework for writing fully native apps using Reflex, a Functional Reactive Programming library for Haskell.
Haskell
43
star
7

reflex-ghci

Run GHCi from within a Reflex FRP application and interact with it using a functional reactive interface.
Haskell
38
star
8

reflex-todomvc

Reflex FRP is a composable, cross-platform functional reactive programming framework for Haskell. It allows you to build interactive components in pure functional style, working in harmony with established Haskell techniques and improving the quality and elegance of your applications.
Haskell
32
star
9

reflex-frp.org

reflex-frp.org website
HTML
28
star
10

reflex-dom-semui

A reflex-dom API for Semantic UI components
Haskell
22
star
11

reflex-gadt-api

Interact with a JSON-serialized API defined by a GADT in your reflex-dom application
Haskell
18
star
12

patch

Data structures for describing changes to other data structures.
Haskell
16
star
13

reflex-dom-ace

Reflex wrapper for the ACE editor
Haskell
12
star
14

reflex-process

Run and interact with system processes from within a Reflex FRP application.
Haskell
10
star
15

reflex-gloss

Haskell
9
star
16

reflex-fsnotify

Watch files and directories for changes using a functional-reactive interface!
Haskell
6
star
17

reflex-frp

Subscribe to this repo to be notified of announcements and changes in Reflex FRP
3
star
18

reflex-aeson-orphans

Haskell
2
star