reflex-dom: Functional Reactive Web Apps with Reflex
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.
Reflex-DOM is a Functional Reactive web framework based on the Reflex FRP engine: https://reflex-frp.org/.
The reflex-dom package is a small wrapper around the reflex-dom-core package. It pulls in the
correct set of dependencies for each target platform (GHCJS, WebKitGTK, WASM, mobile, etc.).
Libraries should depend on reflex-dom-core and executables will usually depend on reflex-dom.
All of reflex-dom-core's modules are re-exported by reflex-dom.
For Hackage documentation, please see: https://hackage.haskell.org/package/reflex-dom-core.
Modules
[Index] [Quick Jump]
- Foreign
- JavaScript
- Foreign.JavaScript.Orphans
 - Foreign.JavaScript.TH
 - Foreign.JavaScript.Utils
 
 
 - JavaScript
 - Reflex
- Reflex.Dom
- Builder
- Reflex.Dom.Builder.Class
- Reflex.Dom.Builder.Class.Events
 
 - Reflex.Dom.Builder.Hydratable
 - Reflex.Dom.Builder.Immediate
 - Reflex.Dom.Builder.InputDisabled
 - Reflex.Dom.Builder.Static
 
 - Reflex.Dom.Builder.Class
 - Reflex.Dom.Class
 - Reflex.Dom.Core
 - Reflex.Dom.Internal
 - Reflex.Dom.Location
 - Reflex.Dom.Main
 - Modals
- Reflex.Dom.Modals.Class
 
 - Reflex.Dom.Old
 - Reflex.Dom.Prerender
 - Reflex.Dom.Time
 - Reflex.Dom.WebSocket
- Reflex.Dom.WebSocket.Query
 
 - Reflex.Dom.Widget
- Reflex.Dom.Widget.Basic
 - Reflex.Dom.Widget.Input
 - Reflex.Dom.Widget.Lazy
 - Reflex.Dom.Widget.Resize
 
 - Reflex.Dom.Xhr
- Reflex.Dom.Xhr.FormData
 
 
 - Builder
 
 - Reflex.Dom
 
Flags
Manual Flags
| Name | Description | Default | 
|---|---|---|
| use-warp | Use jsaddle-warp server  | Disabled | 
| use-reflex-optimizer | Use the GHC plugin Reflex.Optimizer on some of the modules in the package. This is still experimental.  | Disabled | 
| expose-all-unfoldings | Build the library with -fexpose-all-unfoldings which can help client code specialize better  | Disabled | 
| build-examples | Build the executables in ./examples  | Disabled | 
Automatic Flags
| Name | Description | Default | 
|---|---|---|
| webkit2gtk | Use WebKit2 version of WebKitGTK.  | Enabled | 
Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info
Downloads
- reflex-dom-0.6.3.4.tar.gz [browse] (Cabal source package)
 - Package description (as included in the package)
 
Maintainer's Corner
For package maintainers and hackage trustees
Candidates
| Versions [RSS] | 0.1, 0.1.1, 0.2, 0.3, 0.4, 0.5, 0.5.2.0, 0.5.3, 0.6.0.0, 0.6.1.0, 0.6.1.1, 0.6.2.0, 0.6.3.0, 0.6.3.1, 0.6.3.2, 0.6.3.3, 0.6.3.4 (info) | 
|---|---|
| Change log | ChangeLog.md | 
| Dependencies | aeson (>=1.4 && <2.3), android-activity (>=0.2 && <0.3), base (>=4.7 && <4.22), bytestring (>=0.10 && <0.13), containers, data-default (>=0.7 && <0.9), dependent-map, dependent-sum, ghc-prim, ghcjs-dom, jsaddle (>=0.9.6 && <0.10), jsaddle-wasm (>=0.1 && <0.2), jsaddle-webkit2gtk (>=0.9.6 && <0.10), jsaddle-wkwebview (>=0.9.6 && <0.10), lens, mtl, patch, prim-uniq, random, reflex (>=0.8 && <1), reflex-dom, reflex-dom-core (>=0.8.1.0 && <0.9), text (>=1.2 && <2.2), time, transformers, vector [details] | 
| License | BSD-3-Clause | 
| Author | Ryan Trinkle | 
| Maintainer | ryan.trinkle@gmail.com | 
| Category | FRP, Web, GUI, HTML, Javascript, Reactive, Reactivity, User Interfaces, User-interface | 
| Source repo | head: git clone https://github.com/reflex-frp/reflex-dom(reflex-dom) | 
| Uploaded | by alexfmpe at 2025-04-05T19:21:33Z | 
| Distributions | NixOS:0.6.3.4 | 
| Reverse Dependencies | 9 direct, 2 indirect [details] | 
| Executables | krausest, benchmark, sortableList | 
| Downloads | 7536 total (30 in the last 30 days) | 
| Rating | 2.5 (votes: 6) [estimated by Bayesian average] | 
| Your Rating | |
| Status | Docs uploaded by user Build status unknown [no reports yet]  |