purescript-concur-core
purescript-concur-react
purescript-concur-core | purescript-concur-react | |
---|---|---|
3 | 6 | |
29 | 265 | |
- | -0.4% | |
4.7 | 2.0 | |
3 days ago | 5 months ago | |
PureScript | PureScript | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
purescript-concur-core
-
Flame: A PureScript front-end framework inspired by the Elm architecture
1. Application wide state is easy since you can always access state from parent components in child components. The problem occurs when you want to update parent state from child components.
Fortunately, you can make your own abstractions in Concur. For example, you can use a "Wire" - which lets multiple child components share and update parts of the parent's state (https://github.com/purescript-concur/purescript-concur-core/...). Note how this abstraction just uses the high level Concur API, and doesn't depend on the UI backend. With a wire the code might look something like this -
-- A wire into parent's state, accessible using `with`, and updateable using `wire.send`
-
Shpadoinkle UI: Web development for Haskell
Have you looked at signals? AFAICT they are exactly what you are looking for. A signal is just Cofree widget (https://github.com/purescript-concur/purescript-concur-core/blob/master/src/Concur/Core/FRP.purs#L26).
purescript-concur-react
-
Building Mystery Mansion Madness without a UI Framework
Before 2012, all of my websites were made using HTML, CSS and a sprinkling of JS. Then, I went all-in on AngularJS, followed by React. I started using Typescript and then PureScript and learned more frameworks like Halogen and Concur. I even wrote my own UI framework called purescript-deku.
-
Flame: A PureScript front-end framework inspired by the Elm architecture
I was wondering that myself. Here's an Ajax example: https://github.com/purescript-concur/purescript-concur-react...
It could use some type signatures, but it makes sense.
As for managing state, my understanding of the Elm Architecture is that there is one "global" state data structure, and various parts of it are handed down from parent to child. So my question would be the opposite of yours: what if I want local state? Is that possible? There are situations where some toggle being on or off isn't very important and keeping track of it in a global data structure is burdensome
-
Shpadoinkle UI: Web development for Haskell
And here is an example of a fully editable tree in a handful of lines of code using signals - https://github.com/purescript-concur/purescript-concur-react/blob/master/examples/src/Test/EditHeadingsSignals.purs.
-
Progressive Disclosure of Complexity and Typed FP Languages
The author of the article might be interested in seeing the counter example in purescript-concur
What are some alternatives?
purescript-flame - Fast & simple framework for building web applications
yew - Rust / Wasm framework for creating reliable and efficient web applications
shpadoinkle
elm-ts - A porting to TypeScript featuring fp-ts, rxjs6 and React
purescript-concur-streaming-poc - A small POC for Concur async streaming without Free or Aff
purescript-refract - Optical Purescript UI library based on React and the Elm architecture, but without the boilerplate.
Cycle.js - A functional and reactive JavaScript framework for predictable code