SlideShare a Scribd company logo
a reactive framework
Cycle.js
HELLO!
I am Luca Mezzalira
Solutions Architect @ DAZN
Google Developer Expert on Web Technologies
Community Manager of London JavaScript User Group
1.
REACTIVE
PROGRAMMING
PASSIVE REACTIVE
BA BA
2.
Cycle.js
Cycle.js
Core concepts
▸ Pure Functions
▸ Drivers
▸ Components
▸ Streams
STREAMS
A stream is a sequence of ongoing events
ordered in time. It can emit three different
things: a value (of some type), an error, or a
"completed" signal.
EVERYTHING CAN BE A STREAM
Cycle Diversity
▸ Refactored in Typescript
▸ It accepts different type of
reactive libraries (xstream,
rxjs 4 and 5, most)
▸ Cycle and Motorcycle are
merged adding the best of
both frameworks
▸ Integration with Snabbdom
for DOM rendering
https://github.com/cyclejs/cyclejs/releases/tag/v7.0.0
React-Native
React
https://github.com/cyclejs/cycle-react-native
https://github.com/pH200/cycle-react
Snabbdom-jsx
https://github.com/yelouafi/snabbdom-jsx
3.
MODEL VIEW
INTENT
VIEW INTENT
MODEL
RENDERER
futurice.com/blog/reactive-mvc-and-the-virtual-dom
MVI RULES
▸ Unidirectional data flow
▸ A module shouldn’t control
any other module (controller
in MVC)
▸ The only shared part between
modules are observables
▸ Intent is a component with
only one responsibility: It
should interpret what the
user is trying to do in terms
of model updates, and export
these "user intentions" as
events
Cycle.js in action
https://github.com/lucamezzalira/jsday-cycle-js
Awesome Cycle.js
https://github.com/cyclejs-community/awesome-cyclejs
Cycle.js
http://cycle.js.org/
Unidirectional Data flow
https://vimeo.com/168652278
Cycle.js fundamentals
https://egghead.io/courses/cycle-js-fundamentals
Can we use
Reactive Programming
in any project?
THANKS EVERYONE
Q&A
@lucamezzalira
github.com/lucamezzalira
www.lucamezzalira.com
www.londonjs.uk
mezzalab@gmail.com

More Related Content

Viewers also liked (17)

PDF
Promises are so passé - Tim Perry - Codemotion Milan 2016
Codemotion
 
PDF
Next generation of frontend architectures - Luca Mezzalira - Codemotion Milan...
Codemotion
 
PPTX
عرض التربية
Rajwa Lehyani
 
PDF
Lynch-Recommend-Ltr2
Beth Lynch
 
PDF
Galaxy Note 5 Manual in English
Robert Isaac Kreitzer
 
PDF
TornerieZS (Borgomanero, Italy) presentation
guestcd8a48
 
DOC
Suwei_CV_Draft
Su.Wei Kuwait
 
PDF
Halo Ancyclopedia
guest0755ad
 
PDF
Using scenarios to guide copper exploration targeting strategies - Sykes - Se...
John Sykes
 
PPT
System engineering
Dr.M.Karthika parthasarathy
 
PDF
Amul India Case study
Ajeet .
 
PDF
Transforming exploration - Sykes et al - Sep 2016 - Centre for Exploration Ta...
John Sykes
 
PPTX
I.M Pei Biography
Páŕťĥ Patel
 
PDF
Universal JavaScript Web Applications with React - Luciano Mammino - Codemoti...
Codemotion
 
PDF
The hitchhiker's guide to UXing without a UXer - Chrissy Welsh - Codemotion M...
Codemotion
 
PDF
INDUCED MECHANICAL PROPERTIES AND ADVANCED APPLICATIONS OF NATURAL FIBRE COMP...
Sajal Tiwari
 
PPTX
Amul case study
Rajnish Deo
 
Promises are so passé - Tim Perry - Codemotion Milan 2016
Codemotion
 
Next generation of frontend architectures - Luca Mezzalira - Codemotion Milan...
Codemotion
 
عرض التربية
Rajwa Lehyani
 
Lynch-Recommend-Ltr2
Beth Lynch
 
Galaxy Note 5 Manual in English
Robert Isaac Kreitzer
 
TornerieZS (Borgomanero, Italy) presentation
guestcd8a48
 
Suwei_CV_Draft
Su.Wei Kuwait
 
Halo Ancyclopedia
guest0755ad
 
Using scenarios to guide copper exploration targeting strategies - Sykes - Se...
John Sykes
 
System engineering
Dr.M.Karthika parthasarathy
 
Amul India Case study
Ajeet .
 
Transforming exploration - Sykes et al - Sep 2016 - Centre for Exploration Ta...
John Sykes
 
I.M Pei Biography
Páŕťĥ Patel
 
Universal JavaScript Web Applications with React - Luciano Mammino - Codemoti...
Codemotion
 
The hitchhiker's guide to UXing without a UXer - Chrissy Welsh - Codemotion M...
Codemotion
 
INDUCED MECHANICAL PROPERTIES AND ADVANCED APPLICATIONS OF NATURAL FIBRE COMP...
Sajal Tiwari
 
Amul case study
Rajnish Deo
 

Similar to Cycle.js a reactive framework (20)

PPTX
Cycle.js overview
Oleksii Prohonnyi
 
PPTX
Cycling for noobs
Steve Lee
 
PPTX
Getting Reactive with Cycle.js and xstream
Steve Lee
 
PPTX
Getting Reactive with CycleJS and XStream
TechExeter
 
PDF
Cycle.js - A functional reactive UI framework
Nikos Kalogridis
 
PDF
Cycle.js - Functional reactive UI framework (Nikos Kalogridis)
GreeceJS
 
PDF
Reduxing UI: Borrowing the Best of Web to Make Android Better
Christina Lee
 
PDF
React + flux
Daniel Werthen
 
PDF
Robust web apps with React.js
Max Klymyshyn
 
PDF
Meteor + React
Taggart Bowen-Gaddy
 
PDF
Cycle.js: Functional and Reactive
Eugene Zharkov
 
PDF
React & Flux Workshop
Christian Lilley
 
PPTX
What’s expected in Spring 5
Gal Marder
 
PDF
NGRX Apps in Depth
Trayan Iliev
 
PDF
An Overview of the React Ecosystem
FITC
 
PDF
React JS and why it's awesome
Andrew Hull
 
PDF
DZone_RC_RxJS
Luis Atencio
 
PPTX
React.js at Cortex
Geoff Harcourt
 
PDF
From Back to Front: Rails To React Family
Khor SoonHin
 
PDF
Asynchronous javascript
Eman Mohamed
 
Cycle.js overview
Oleksii Prohonnyi
 
Cycling for noobs
Steve Lee
 
Getting Reactive with Cycle.js and xstream
Steve Lee
 
Getting Reactive with CycleJS and XStream
TechExeter
 
Cycle.js - A functional reactive UI framework
Nikos Kalogridis
 
Cycle.js - Functional reactive UI framework (Nikos Kalogridis)
GreeceJS
 
Reduxing UI: Borrowing the Best of Web to Make Android Better
Christina Lee
 
React + flux
Daniel Werthen
 
Robust web apps with React.js
Max Klymyshyn
 
Meteor + React
Taggart Bowen-Gaddy
 
Cycle.js: Functional and Reactive
Eugene Zharkov
 
React & Flux Workshop
Christian Lilley
 
What’s expected in Spring 5
Gal Marder
 
NGRX Apps in Depth
Trayan Iliev
 
An Overview of the React Ecosystem
FITC
 
React JS and why it's awesome
Andrew Hull
 
DZone_RC_RxJS
Luis Atencio
 
React.js at Cortex
Geoff Harcourt
 
From Back to Front: Rails To React Family
Khor SoonHin
 
Asynchronous javascript
Eman Mohamed
 
Ad

More from luca mezzalira (10)

PDF
Kaizen - the key of continuos improvement
luca mezzalira
 
PDF
Having fun with Adobe AIR 2013
luca mezzalira
 
KEY
Flash Platform su dispositivi mobili
luca mezzalira
 
PDF
Flash Platform Ovierview
luca mezzalira
 
PDF
Using design pattern for mobile
luca mezzalira
 
PDF
Sviluppo di contenuti Flash Platform su iOS e Android
luca mezzalira
 
PDF
Actionscript 3 Design Pattern
luca mezzalira
 
PDF
Flash Platform & Android
luca mezzalira
 
PDF
Adobe AIR & Printing
luca mezzalira
 
PDF
Android Development with Flash Platform
luca mezzalira
 
Kaizen - the key of continuos improvement
luca mezzalira
 
Having fun with Adobe AIR 2013
luca mezzalira
 
Flash Platform su dispositivi mobili
luca mezzalira
 
Flash Platform Ovierview
luca mezzalira
 
Using design pattern for mobile
luca mezzalira
 
Sviluppo di contenuti Flash Platform su iOS e Android
luca mezzalira
 
Actionscript 3 Design Pattern
luca mezzalira
 
Flash Platform & Android
luca mezzalira
 
Adobe AIR & Printing
luca mezzalira
 
Android Development with Flash Platform
luca mezzalira
 
Ad

Recently uploaded (20)

PDF
Jak MŚP w Europie Środkowo-Wschodniej odnajdują się w świecie AI
dominikamizerska1
 
PDF
CIFDAQ Weekly Market Wrap for 11th July 2025
CIFDAQ
 
PDF
Achieving Consistent and Reliable AI Code Generation - Medusa AI
medusaaico
 
PDF
SWEBOK Guide and Software Services Engineering Education
Hironori Washizaki
 
PDF
Agentic AI lifecycle for Enterprise Hyper-Automation
Debmalya Biswas
 
PDF
The Builder’s Playbook - 2025 State of AI Report.pdf
jeroen339954
 
PDF
Exolore The Essential AI Tools in 2025.pdf
Srinivasan M
 
PDF
Newgen 2022-Forrester Newgen TEI_13 05 2022-The-Total-Economic-Impact-Newgen-...
darshakparmar
 
PDF
Chris Elwell Woburn, MA - Passionate About IT Innovation
Chris Elwell Woburn, MA
 
PDF
CIFDAQ Token Spotlight for 9th July 2025
CIFDAQ
 
PDF
Using FME to Develop Self-Service CAD Applications for a Major UK Police Force
Safe Software
 
PPTX
AUTOMATION AND ROBOTICS IN PHARMA INDUSTRY.pptx
sameeraaabegumm
 
PPTX
OpenID AuthZEN - Analyst Briefing July 2025
David Brossard
 
PDF
LLMs.txt: Easily Control How AI Crawls Your Site
Keploy
 
PDF
Log-Based Anomaly Detection: Enhancing System Reliability with Machine Learning
Mohammed BEKKOUCHE
 
PPTX
WooCommerce Workshop: Bring Your Laptop
Laura Hartwig
 
PDF
Presentation - Vibe Coding The Future of Tech
yanuarsinggih1
 
PPTX
UiPath Academic Alliance Educator Panels: Session 2 - Business Analyst Content
DianaGray10
 
PDF
Newgen Beyond Frankenstein_Build vs Buy_Digital_version.pdf
darshakparmar
 
PDF
Timothy Rottach - Ramp up on AI Use Cases, from Vector Search to AI Agents wi...
AWS Chicago
 
Jak MŚP w Europie Środkowo-Wschodniej odnajdują się w świecie AI
dominikamizerska1
 
CIFDAQ Weekly Market Wrap for 11th July 2025
CIFDAQ
 
Achieving Consistent and Reliable AI Code Generation - Medusa AI
medusaaico
 
SWEBOK Guide and Software Services Engineering Education
Hironori Washizaki
 
Agentic AI lifecycle for Enterprise Hyper-Automation
Debmalya Biswas
 
The Builder’s Playbook - 2025 State of AI Report.pdf
jeroen339954
 
Exolore The Essential AI Tools in 2025.pdf
Srinivasan M
 
Newgen 2022-Forrester Newgen TEI_13 05 2022-The-Total-Economic-Impact-Newgen-...
darshakparmar
 
Chris Elwell Woburn, MA - Passionate About IT Innovation
Chris Elwell Woburn, MA
 
CIFDAQ Token Spotlight for 9th July 2025
CIFDAQ
 
Using FME to Develop Self-Service CAD Applications for a Major UK Police Force
Safe Software
 
AUTOMATION AND ROBOTICS IN PHARMA INDUSTRY.pptx
sameeraaabegumm
 
OpenID AuthZEN - Analyst Briefing July 2025
David Brossard
 
LLMs.txt: Easily Control How AI Crawls Your Site
Keploy
 
Log-Based Anomaly Detection: Enhancing System Reliability with Machine Learning
Mohammed BEKKOUCHE
 
WooCommerce Workshop: Bring Your Laptop
Laura Hartwig
 
Presentation - Vibe Coding The Future of Tech
yanuarsinggih1
 
UiPath Academic Alliance Educator Panels: Session 2 - Business Analyst Content
DianaGray10
 
Newgen Beyond Frankenstein_Build vs Buy_Digital_version.pdf
darshakparmar
 
Timothy Rottach - Ramp up on AI Use Cases, from Vector Search to AI Agents wi...
AWS Chicago
 

Cycle.js a reactive framework