WeAreDevelopers LIVE • Sep 21, 2023

How to Create New RxJS Operators

Mohammad-Ali A'râbi

Tame massive backend RxJS pipelines by building your own custom operators. Learn how advanced TypeScript features encapsulate messy data plumbing into highly testable, declarative code.

Pause
Mute Enter Fullscreen
#1 about 4 min

Origin and history of the ReactiveX ecosystem

The origin of ReactiveX addresses the complexity of concurrent programming using observable extensions across languages.

#2 about 3 min

Implementations of reactive programming in Java ecosystems

Java implementations like RxJava, Reactor, and Akka Streams offer distinct approaches to reactive backend engineering.

#3 about 2 min

Introduction of the pipe method in RxJS

RxJS 5.5 refactored the observable object by moving operator functions into a unified pipe method.

#4 about 3 min

Challenges of adopting RxJS in Node backend architectures

Stateless backend pipelines become long and difficult to read without proper functional decomposition.

#5 about 4 min

Refactoring long RxJS pipelines with custom operator functions

Creating higher-level functions to encapsulate low-level RxJS operations improves code readability and maintainability.

#6 about 5 min

Managing local pipeline state using custom tuple operators

Leveraging TypeScript arrays as tuples preserves intermediate values during complex RxJS stream transformations.

#7 about 4 min

Implementing custom array-based generic RxJS operators

Developers can use TypeScript generics and project functions to create custom RxJS operators like listMap and zipMap.

#8 about 7 min

Type definitions for handling nested observables in operators

Extending observable inputs and utilizing flatMap mechanisms allows custom operators to handle functions returning observables.

#9 about 2 min

Applying DRY principles to complex pipelines with TypeScript

Relying on strict TypeScript definitions ensures correct implementations when abstracting repetitive pipeline logic into operators.

#10 about 29 min

Testing and extending custom RxJS operators in production

Practical insights cover unit testing operators, error handling, syntax choices, and open-source contribution patterns.

Matching moments

7:00 min

Abstracting recurring logic into custom RxJS operators

Benedikt Starzengruber · LIVE

1:18 min

Structuring pipelines with new pipeable creation operators

Jan-Niklas Wortmann · LIVE

2:03 min

Building scalable applications with reactive programming

Josh Long · WWC 2022

2:36 min

Utilizing JavaScript primitives for reactivity and user interface synchronization

Michael Egger-Zikes Michael Egger-Zikes · WWC 2025

2:45 min

Constructing data pipelines with stream processing architecture operators

Soroosh Khodami Soroosh Khodami · WWC 2024

4:36 min

Improved TypeScript type inference features in RxJS 7

Jan-Niklas Wortmann · LIVE

Upcoming sessions on this topic

Open session

World Congress 2026 North America

One Repo, One Strategy: Scalable Full-Stack Testing in a Monorepo World

Paweł Matynia, Bartosz Leczycki

Paweł Matynia
Bartosz Leczycki
Open session

World Congress 2026 North America

API = Some REST and HTTP, right? RIGHT?!

Rustam Mehmandarov

Passionate computer scientist

Rustam Mehmandarov
Open session

World Congress 2026 North America

Designing APIs That Survive AI Agents at Scale

Phani Pendurthi

Mastercard, Principal Software Engineer

Phani Pendurthi
Open session

World Congress 2026 North America

GitHub’s Team X-Ray: Your Repository Knows More About Your Team Than Your Team Does

Andrea Griffiths

Senior Developer Advocate

Andrea Griffiths
Open session

World Congress 2026 North America

When Humans Stop Writing Code: Rethinking Languages, Compilers, and Responsibility

Simon Auer

Organizer of flutter vienna meetup and CEO of marqably

Simon Auer
Open session

World Congress 2026 North America

Merging at Scale: From Broken Builds to Green Mainline

Preetam Dwivedi, Manjari Akella

Preetam Dwivedi
Manjari Akella