When writing a loop using a paging API to fetch data for an Angular app, I felt so frustrated that I was very close to going back to Promises. I came across lot of questions on the web but no convincing answers: some even proposing to subscribe to an Observable within the service implementation. However, I did not abandon Observables to return using Promises thanks to this very informative comparison . From there I picked an excellent article on reactive programming with RxJava which gave me hope. So I kept on trying... Achieving both reactivity and recursivity without understanding the fundamentals of RxJs operators, was a struggle. After focussing on the use of the map and mergeMap operators, I managed a first implementation very similar to how I would write a solution to the same problem using Promises. To help me and others who have the same questions, I created a repository of angular code snippets . One is about RxJs Recursive Observable . Expand operator to the