Skip to content

End-to-end reactive WebSockets demo with Angular 2 (TypeScript) and RxJS (RxNext) and JavaSE + Project Reactor at server side. No web server needed - all resources as well as live WebSocket events are served by custom HTTP endpoint using Reactor Net.

License

Notifications You must be signed in to change notification settings

iproduct/ipt-angular2-reactive-websocket-demo

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 

Repository files navigation

IPT Reactor Demo: JUG Wishes 1.0

End-to-end reactive WebSockets demo with Angular 2 (TypeScript) and RxJS (RxNext) and JavaSE + Project Reactor at server side. No web server needed - all resources as well as live WebSocket events are served by custom reactive HTTP endpoint using Reactor Net.

JavaScript (TypeScript) client part is available in src/main/webapp folder. The main application component class AppComponent is in src/main/webapp/app folder, together with custom reactive WebSocket implementation - IPTRxWebSocketSubject component. IPTRxWebSocketSubject is exposing WebSocket as RxJS bidirectional subject (by idea from RxDOM), plus reactive WebSocket open and close observers.

Server side is implemented using Reactor (http://projectreactor.io/) project. Main main class is reactor.ReactorWishesWS in src/main/java folder. It serves all resources required by the client using Reactor Net (Netty), and could be started as console application - no webserver required. It also implements reactive WebSocket endpoint (see wsHandler() method).

The presentation accompanying this demo is available at: http://www.slideshare.net/Trayan_Iliev/ipt-high-performance-reactive-programming-with-java-8-and-javascript

Limitaion: Demo works well in Chrome, but not in Firefox, because of WebSocket implementation coming from Reactor Net. Further investigation needed.

About

End-to-end reactive WebSockets demo with Angular 2 (TypeScript) and RxJS (RxNext) and JavaSE + Project Reactor at server side. No web server needed - all resources as well as live WebSocket events are served by custom HTTP endpoint using Reactor Net.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published