Awesome
frint
The modular JavaScript framework
For documentation, visit https://frint.js.org.
Key characteristics and features include:
- Gives your applications a structure
- Environment agnostic (runs in browser, server, and CLI)
- Rendering library agnostic (integrates with React, Vue, and Preact)
- Composable with multiple packages as needed
- Each package is focused on doing one thing only and doing it well
- Modular architecture with Apps
- Embraces reactive programming with RxJS
- Progressive and easy to adopt in existing applications
This project adheres to the Contributor Covenant code of conduct. By participating, you are expected to uphold this code. Please report unacceptable behavior to frintjs-conduct@googlegroups.com.
Quick start
Install frint-cli
:
$ npm install -g frint-cli
Initialize an example app:
$ frint new my-directory --example kitchensink
Now you can install all the dependencies, and start the application:
$ cd my-directory
$ npm install
$ npm start
Find more examples here.
Packages
The framework is a collection of these packages, which can be composed together on demand:
Package | Status | Description |
---|---|---|
frint | Base for creating Apps | |
frint-store | State management with reactive stores | |
frint-data | Reactive data modelling | |
frint-react | React.js integration | |
frint-react-server | Server-side rendering of Apps | |
frint-router | Router services for building Single Page Applications | |
frint-router-react | React components for building SPAs | |
frint-cli | CLI runner | |
frint-model | Use frint-data instead |
For library developers
These packages enable you to create packages integrating FrintJS with other rendering libraries:
- frint-component-utils: Utils for reactive Components
- frint-component-handlers: Handlers for integrating with other rendering libraries
- frint-router-component-handlers: Handlers for integrating
frint-router
with other rendering libraries
Internally used
- frint-test-utils: Internally used test utilities
- frint-config: Common config for your Apps
- frint-compat: Backwards compatibility for older versions
Community projects
- frint-vue: Vue.js integration
- frint-react-native: React Native integration
License
MIT © FrintJS Authors and Travix International