SaaSHub helps you find the best software and product alternatives Learn more →
Top 23 TypeScript Reactive Programming Projects
-
SurveyJS
Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App. With SurveyJS form UI libraries, you can build and style forms in a fully-integrated drag & drop form builder, render them in your JS app, and store form submission data in any backend, inc. PHP, ASP.NET Core, and Node.js.
-
umbrella
⛱ Broadly scoped ecosystem & mono-repository of 192 TypeScript projects (and 160+ examples) for general purpose, functional, data driven development
-
xstream
An extremely intuitive, small, and fast functional reactive stream library for JavaScript (by staltz)
-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
-
flyde
🌟 Open-source, visual programming for developers. Includes a VS Code extension, integrates with existing TypeScript code, browser and Node.js.
-
SyncedStore
SyncedStore CRDT is an easy-to-use library for building live, collaborative applications that sync automatically.
-
signaldb
SignalDB is a local JavaScript database with a MongoDB-like interface and TypeScript support, enabling optimistic UI with signal-based reactivity across multiple frameworks. It integrates easily with libraries like Angular, Solid.js, Preact, and Vue, simplifying data management with schema-less design, in-memory storage, and fast queries.
-
osmosis-js
JS reference implementation of Osmosis, a JSON data store with peer-to-peer background sync
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
Any continuous stream of data can be declared as an observable and the user can subscribe to it and monitor the changes in the data that is subscribed to. In simple terms we can say that observable is something that we can observe the changes constantly and in real time.
For large-scale applications with frequently changing state, dedicated state management libraries like Redux, MobX, Zustand, etc. are generally better choices. These libraries offer efficient ways to handle state updates and minimize unnecessary re-renders.
In my case Cycle JS (https://cycle.js.org) was very enlightenment and pedagogic. It make me realize that software is always and only a matter of data transformation. And those pure data transformations can be keep separated and decoupled from "side effects".
Project mention: Unit – Next Generation Visual Programming System | news.ycombinator.com | 2023-12-20
Project mention: Local-first software: You own your data, in spite of the cloud (2019) | news.ycombinator.com | 2023-10-02This article has been quite the inspiration for many projects and progress on this front. I think we're seeing more and more developments around CRDTs and local-first frameworks / applications.
I'm working on a few projects in this area:
- https://www.typecell.org - Notion meets Notebook-style live programming for TypeScript / React
- https://www.blocknotejs.org - a rich text editor built on TipTap / Prosemirror that supports Yjs for local-first collaboration
- https://syncedstore.org - a wrapper around Yjs for easier development
In my experience so far, some things get more complicated when building a local-first application, and some things get a lot easier. What gets easier is that once you've modeled and implemented the data-layer (which does require you to rethink / unlearn a few principles), you don't need to worry about data-fetching, errors etc. as much as in a regular "API-based" app.
Another interesting video I recommend on this topic is about Linear's "Sync Engine" which employs some of the local-first techniques as well: https://www.youtube.com/watch?v=Wo2m3jaJixU
Project mention: Focusing on optimization, surpassing immer, limu finally reaches the top of immutable data performance | dev.to | 2024-01-06helux A state engine that integrates atom, signal, and dependency tracking, and supports fine-grained response updates
Project mention: Show HN: SignalDB – Reactive Local JavaScript Database | news.ycombinator.com | 2023-10-20
TypeScript Reactive Programming related posts
-
Why is my React Component re-rendering?
-
What is an observable?
-
Episode 24/13: Native Signals, Details on Angular/Wiz, Alan Agius on the Angular CLI
-
Episode 24/09: Testing without TestBed, SSR & Hydration
-
10 Reasons for MiniRx Signal Store
-
Focusing on optimization, surpassing immer, limu finally reaches the top of immutable data performance
-
Redux 101
-
A note from our sponsor - SaaSHub
www.saashub.com | 3 Jun 2024
Index
What are some of the best open-source Reactive Programming projects in TypeScript? This list will help you:
Project | Stars | |
---|---|---|
1 | RxJS | 30,298 |
2 | MobX | 27,310 |
3 | Cycle.js | 10,235 |
4 | Bacon | 6,462 |
5 | umbrella | 3,242 |
6 | unit | 2,639 |
7 | xstream | 2,366 |
8 | data-client | 1,903 |
9 | flyde | 1,850 |
10 | Router5 | 1,722 |
11 | SyncedStore | 1,648 |
12 | concent | 1,303 |
13 | reatom | 962 |
14 | signia | 874 |
15 | Refract | 815 |
16 | core | 401 |
17 | Cycle.js (react-native) | 260 |
18 | signaldb | 180 |
19 | svelte-plugins | 127 |
20 | osmosis-js | 51 |
21 | angular-composition-api | 46 |
22 | matchbook-ts | 32 |
23 | quel | 27 |
Sponsored