RxJS Web Library
This library aims to provide an observable
based API, that wraps the web APIapi. This also includes experimental, non-standard and not well-supported APIs. Polyfills need to be provided by the user of this library if necessary.
This library uses the Observable implementation of rxjs >= 6.
The public API surface of this library can be affected by breaking changes within the experimental API used.
Supported API Roadmap
API | Implemented | Tested | Experimental/not well supported |
---|---|---|---|
Bluetooth API | ☐ | ☐ | ☑ |
Broadcast Channel API | ☐ | ☐ | ☐ |
dynamic import | ☑ | ☐ | ☐ |
File and Directory Entries API | ☐ | ☐ | ☑ |
Geolocation API | ☑ | ☐ | ☐ |
Image Capture API | ☐ | ☐ | ☑ |
IntersectionObserver | ☑ | ☐ | ☑ |
matchMedia | ☑ | ☐ | ☐ |
MutationObserver | ☑ | ☐ | ☐ |
Network Information API | ☑ | ☐ | ☑ |
PerformanceObserver | ☑ | ☐ | ☑ |
Push API | ☐ | ☐ | ☑ |
Permission API | ☑ | ☐ | ☑ |
ResizeObserver | ☑ | ☐ | ☑ |
Sensor APIs | ☑ | ☐ | ☑ |
Vibration API | ☐ | ☐ | ☑ |
API Reference
General Hint: Usually Promises are eager. All the APIs provided by this library, that wraps native promise-based APIs, are lazy though. This design decision was made due to the general specification of Observables.
Observer
fromIntersectionObserver
fromMutationObserver
fromPerformanceObserver
fromResizeObserver
other Web-APIs
fromImport
fromMediaListQuery
fromNetwork
fromPermission
fromPosition
fromSensor
Credits
This project is build upon the typescript library starter. Kudos to @alexjoverm and every contributor of this amazing project!