proposal-observable
proposal-observable | proposal-built-in-modules | |
---|---|---|
12 | 4 | |
3,036 | 891 | |
0.2% | 0.3% | |
0.0 | 0.0 | |
over 4 years ago | 11 months ago | |
JavaScript | HTML | |
- | BSD 2-clause "Simplified" License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
proposal-observable
-
Proposal: Signals as a Built-In Primitive of JavaScript
https://github.com/tc39/proposal-observable
And there's the new one which seems to be getting implemented in node right now:
-
Observable API Proposal
How does it differ from <https://github.com/tc39/proposal-observable/>?
-
The Truth about Svelte
I think it is a shame that the Observable proposal [1] still seems somewhat stuck in Stage 1. It's a better idea than just raw event emitters because of composability (if no other reason). Making Observables "first class" could go a long way to unifying a lot of reactivity patterns in various frameworks, in theory at least.
To be fair, Observables and especially Observable composition has a rough learning curve and many frameworks like Svelte intentionally prefer implict reactivity and avoiding things like explicit Observables because they are seen as too complex/"too hard" for the average developer.
(Then you get awful worst of both worlds frameworks like Angular that sort of rely on Observables but yet also don't trust teaching Observables and wind up with code that isn't properly Observable and so also has all the code for implicit reactivity and is full of nasty escape hatches that cause all sorts of composition problems and unnecessary side effects.)
[1] https://github.com/tc39/proposal-observable
-
💡 Observable Mutable Wrapper Object
Uses an interface described in the TC39 observables proposal
-
Example of Asynchronous programming using Observer pattern vs Promise
JavaScript doesn't have any built-in observables (addEventListener is part of the DOM API specific to browsers) though there is an old observable proposal collecting dust. I think ReactiveX (RxJS) is pretty much the go-to for any kind of observable functionality you may want. That may be a good place to start to really see what observables can do.
-
JavaScript Evolutsiyasi Qisqa Satrlarda!
Observablelar streamlarga asoslangan reaktiv dasturlash paradigmasini olib kiradi JSga. Shaxsan menga eng yoqqan takliflardan biri. Bu haqida ham alohida maqola yozish niyat bor. RxJS (Angular) bilan ishlab ko'rganlar bo'lsa buni nimaligini juda yaxshi tushunishadi, endi bu library emas balki native 🚀 !!!
-
4 Ways to Handle Async Operations in Javascript
Observable is an object that takes a stream of data and emits events over time to react accordingly. There is a talk to add it to the ECMAScript standard and its proposal is here. Till now it is not part of the ECMAScript standard so to use it, you have to use a third-party library and the well-known Reactive Extension in Javascript is RxJs.
-
Reactive Programming
Well, the answer is surprisingly no. But, there is an active tc39 proposal going on around for a while, didn’t find it much active though, you could watch out here — https://github.com/tc39/proposal-observable
-
Why do we need rxjs library as JavaScript is reactive by default?
RxJS is an implementation of observables which do not exist natively in JavaScript. There is a proposal for adding observables to the language, but it's only stage 1 and hasn't been active for years.
- Query Engines: Push vs. Pull
proposal-built-in-modules
-
Turboprop: JS Arrays as Property Accessors!?!
There is proposal for stdlib, but it will take some time until (if ever) it will reach stage 4.
-
Don't make me think, or why I switched to Rails from JavaScript SPAs
The working group most in charge of JS is ECMA's TC-39 (TC => Technical Committee) [0]. They've been taking a very deliberate, slow path to expanding the "standard" library because they take a very serious view of backwards compatibility on the web. Some proposals were shifted because of conflicts with ancient versions of things like MooTools still out in the wild, for instance. (This was the so-called "Smooshgate" incident [1].)
This may speed up a bit if the Built-In Modules proposal [2] passes, which would add a deliberate `import` URL for standard modules which would give a cleaner expansion point for new standard libraries over adding more global variables or further expanding the base prototypes (Object.prototype, Array.prototype, etc) in ways that increasingly likely have backwards compatibility issues.
TC-39 works all of their proposals in the open on Github [3] and it can be a fascinating process to watch if you are interested in the language's future direction.
[0] https://tc39.es/
[1] https://developers.google.com/web/updates/2018/03/smooshgate
[2] https://github.com/tc39/proposal-built-in-modules
[3] https://github.com/tc39/proposals
-
What NPM Should Do Today to Stop a New Colors Attack Tomorrow
There is a TC39 proposal for a "Javascript Standard Library." It's at stage 1, which is better than stage 0.
https://github.com/tc39/proposal-built-in-modules
-
[AskJS] What is the thing you hate the most about JS?
The standard library is a tough one. There is a proposal for built-in modules but it is very early days and miles away from what is needed. Clojure ships with functions that make the likes of Lodash and Ramda redundant. I think for a dynamic language an extensive library of functions for manipulating collections is essential. It is a real thing that once dynamic language codebases grow too big, they become a challenge to maintain. Therefore having functions that do a lot of common tasks for you mitigates that issue. Paired with immutability, lots of code just becomes data passing through pipelines, giving less surface area for bugs and making everything more concise and declarative.
What are some alternatives?
duckdb - DuckDB is an in-process SQL OLAP Database Management System
openapi-typescript-codegen - NodeJS library that generates Typescript or Javascript clients based on the OpenAPI specification
fp-ts - Functional programming in TypeScript
proposal-pattern-matching - Pattern matching syntax for ECMAScript
eslint-plugin-unicorn - More than 100 powerful ESLint rules
Nest - A progressive Node.js framework for building efficient, scalable, and enterprise-grade server-side applications with TypeScript/JavaScript 🚀
eslint-plugin-github - An opinionated collection of ESLint rules used by GitHub.
redwood - The App Framework for Startups
RxJS - A reactive programming library for JavaScript
proposal-record-tuple - ECMAScript proposal for the Record and Tuple value types. | Stage 2: it will change!
cross-project-council - OpenJS Foundation Cross Project Council
Capybara - Acceptance test framework for web applications