Summary of my bookmarked Github repositories from Jul 13th, 2023
S.js is a small reactive programming library that aims to simplify and optimize reactive programming. It provides data signals and computations as the building blocks of reactive apps. Data signals are containers for changing data, while computations are kept up-to-date based on the changes in data signals. S.js offers automatic updates, a clear timeline for app progression, batched updates, and automatic disposal of computations. It allows for the creation of reactive web applications that can detect and respond to changes efficiently.
µsignal is a lightweight library that combines the reactivity API of @preact/signals-core with the extra features inspired by solid-js. With a minified size of only 803 bytes (with brotli compression), µsignal provides a familiar API and developer experience similar to @preact/signals-core. It offers features like signals, computed values, effects, and batch operations. The library supports both CommonJS and ECMAScript module systems, making it versatile for different environments. Additionally, it provides various exports and variants, allowing developers to explore different patterns and compare them with other libraries like solid-js. µsignal also includes lazy, non-side-effecting computed values and custom equality comparison for NaN cases. It is thoroughly tested and offers benchmark comparisons with other libraries like S, solid, preact/signals, and cellx. Integration with Lit is possible through a mixin function provided by the library.
Sinuous is a small, fast, and truly reactive UI library with a size of approximately 1.4kB (gzip). It offers a seamless development experience without the need for a compile step, and you can choose your preferred view syntax. Sinuous provides various add-ons such as observable, map, hydrate, and template. It has an active community contributing additional libraries and utilities. The website offers examples like a counter, analog SVG clock, and TodoMVC, along with documentation and information on interoperability, reactivity, and hydration. Sinuous also exposes an internal API for customization and integration with other reactive libraries.
Oby is a rich Observable/Signal implementation that allows you to build powerful reactive systems. It provides functions like $(), $.batch, $.cleanup, $.context, $.effect, $.memo, $.observable, and more. The library enables you to create Observables, batch updates, register cleanup functions, handle dependency injection, create effects and memos, and work with reactive objects. Oby simplifies the process of managing reactivity and provides convenient performance guarantees for efficient updates.