GrainJS is a JavaScript / TypeScript library for building dynamic web applications.
- It's in part inspired by React, but based on observables (like Knockout) instead of virtual dom.
- It is lightweight, has no dependencies, and takes only ~30KB minified.
- It needs no special tooling. It's nothing more than a library.
- It supports convenient DOM-building in JS, event dispatching, DOM event subscriptions, disposable components, and in-code CSS styling.
- It's fully typed for use with TypeScript.
- It's proven its worth by powering Grist's rich frontend app.
For docs, visit https://gristlabs.github.io/grainjs/.
npm install grainjsOr see Getting started with GrainJS.
See basic examples in Quick tour or complete examples at Examples.
GrainJS is licensed under Apache-2.0 license.