The frint
package primarily handles:
The core of the framework is intentionally kept as simple as possible, allowing other tools/packages to be built around it.
The framework is evironment agnostic. You can run it in the browser, server or CLI (with Node.js).
Understanding the basic concepts would really help. We don't expect you to learn everything about RxJS, but understanding the asynchronous nature of Observables and that they support emitting multiple values over time will help you use FrintJS more efficiently.
To make it easier for beginners, we even ship helper functions like streamProps
from our frint-react
package.
The package frint
itself has nothing to do with rendering. In fact, the core of the framework is environment agnostic, and can run in CLI, browser or even server.
The core's primary responsibilities include:
It is only with additional packages like frint-react
that we connect FrintJS with React.
FrintJS is rendering library agnostic. The core is not built with any specific rendering library in mind. We do support React officially with frint-react
, because we are users of React ourselves, but it can be easily connected to almost any other reactive rendering library.
For example, there is frint-vue
for using FrintJS with Vue.js.
Redux is purely for state management. While FrintJS is mostly concerned with structuring your app with providers (dependencies).
We do have a package called frint-store
, which is an implementation of Redux (with less features) using similar API using RxJS. But it is never required for you to use any specific state management library to use FrintJS.
You are free to use whatever you like for state management.
Of course you can! It is a matter of only setting your Redux store as a provider in your App.
You can read more about the implementation details in this blog post.