Most of the study gears towards JavaScript/web development
Reactive programming - Wikiwand
The Reactive Manifesto
Intro to Reactive Programming - YouTube
Reactive Programming: Why It Matters - YouTube
Unveiling the Magic: Exploring Reactivity Across Various Frameworks
How reactivity actually works? - YouTube
Reactive programming and Vert.x tutorial: Reactica Coderland
Functional Programming as the Pillar of Reactive Programming - DZone Web Dev
The Best Explanation of JavaScript Reactivity 🎆 – Vue Mastery – Medium
The introduction to Reactive Programming you've been missing
How React isn't reactive, and why you shouldn't care - DEV Community
Actor Model
The actor model in 10 minutes
Hewitt, Meijer and Szyperski: The Actor Model (everything you wanted to know...) - YouTube
The Next Programming Language - Douglas Crockford - code::dive 2022 - YouTube
Misty Programming Language: Contents
Signals
The Evolution of Signals in JavaScript - DEV Community
Evolution of Signals in JavaScript - YouTube
A Hands-on Introduction to Fine-Grained Reactivity - DEV Community
Building a Reactive Library from Scratch - DEV Community
xstream
staltz/xstream: An extremely intuitive, small, and fast functional reactive stream library for JavaScript
garbles/yolk: A library for building asynchronous user interfaces.
Xstate
XState Docs
davidkpiano/xstate: State machines and statecharts for the modern web.
@xstate/immer | XState Docs
Welcome to the world of Statecharts - Statecharts
XState Version 4 Released 🚀. It’s been over a year since I first… | by David Khourshid | Medium
The case for statechart and xstate -- why it matters and how we can benefit from it - DEV Community
How to use statecharts - Statecharts
XState Tutorial
An Introduction to XState in TypeScript - DEV Community
State Machines in JavaScript with XState - JavaScript inDepth
Communicating with spawned and invoked xstate actors in React | by Ismayil Khayredinov | ITNEXT
State Chart XML (SCXML): State Machine Notation for Control Abstraction
Statechart =
{
id: 'state_id',
context: {
/* ... */
}
initial: 'initial_state',
states: {
/* ... */
}
}
MachineOptions =
{
{
actions: {
/* ... */
},
activities: {
/* ... */
},
delays: {
/* ... */
},
guards: {
/* ... */
},
services: {
/* ... */
}
}
}
Machine = (Statechart, MachineOptions)
// Machine has `state`, `context`, `transition()`
// this is merely a declaration of state, not an instance
// `interpret()` it as as Service that stores the current value
// [Machine() | xstate](https://xstate.js.org/api/globals.html#machine)
// [StateMachine | xstate](https://xstate.js.org/api/interfaces/statemachine.html)
Service = interpret(Machine)
// Service has `start()`, `stop()`, `send()`, `onTransition()`
// [interpret() | xstate](https://xstate.js.org/api/globals.html#interpret)
// [Interpreter | xstate](https://xstate.js.org/api/classes/interpreter.html)
Resources | XState Docs
Showcase | XState Docs
darrylhebbes/awesome_xstate: Everything awesome about XState
Playgrounds/Visualizer
XState Visualizer live preview your state
StatesKit | Visual Statechart and Finite State Machine editor live preview your state, more powerful
XState TS Viz Template - CodeSandbox with TypeScript support
@xstate/inspect | XState Docs open statechart at https://statecharts.io/, only works on web?
xstate/packages/xstate-inspect at master · davidkpiano/xstate · GitHub
Tutorial
The React Podcast #5: Finite State Machines with David Khourshid | News and podcasts for developers | Changelog
Modeling UI States in A React Form Component Using A Finite State Machine
Implementing a simple state machine library in JavaScript
Finite State Machines with React | CSS-Tricks
Robust React User Interfaces with Finite State Machines | CSS-Tricks
State Machines in React
Stop using isLoading booleans use status
(state machine)
Coding a Finite-State Machine in a React Hook - The Non-Traditional Developer - Medium
Thoughts on state management with XState and ReactJS - DEV Community
rjdestigter/xstate-sample-kit: Sample or starter kit for developing web applications with reactjs, xstate, typescript, xstate/test, storybook, typedoc, fp-ts, and other libraries.
Introducing state machine advent: 24 bite-sized blog posts about state machines and statecharts - DEV Community
XState TodoMVC - CodeSandbox
Model-Based Testing in React with State Machines | CSS-Tricks
Intro to Xstate — a true state management library for react | Weekly Webtips
Computational Design Tsools games and UI sample
coodoo/xstate-examples: A series of examples showing how to model application state with statechart using xstate
Componentizing Application State - YouTube
thechangelog/quiz-game: Changelog's don’t-call-it-jeopardy game show where 3 contestants put their dev knowledge to the test
Video
XState: Let's pair program state machines and state charts with David Khourshid - YouTube
Introduction to State Machines Using XState | egghead.io
Introducing Construct Sturdy UIs with XState | egghead.io
Let’s learn state machines with David K. Piano! — Learn With Jason - YouTube
David Khourshid - Formal Forms with State Machines | React Next 2019 - YouTube
David Khourshid - Infinitely Better UIs with Finite Automata - YouTube
Crafting Stateful Styles with State Machines by David Khourshid | CSSConf BP 2019 - YouTube
#React Wednesdays: XState and JavaScript State Machines - YouTube
XState - Video Player & Nested States - Finite State Machines in React - YouTube repo example use XState + React, substate
Overmind
Overmind - OVERMIND
Using state machines - OVERMIND
Statechart - OVERMIND
React - OVERMIND
MobX
Introduction | MobX
mobxjs/mobx: Simple, scalable state management.
Becoming fully reactive: an in-depth explanation of MobX — Medium
MobX: Ten minute introduction to MobX and React
3 Reasons why I stopped using React.setState – Medium
Reactive Extensions (Rx)
ReactiveX
ReactiveX - Intro
Functional Programming in Javascript
RxJS
ReactiveX/RxJS: A reactive programming library for JavaScript RxJS 5.0+
Introduction - Learn RxJS
Introduction to Rx Rx.NET
dotnet/reactive: The Reactive Extensions for .NET
Reactive Extensions | Microsoft Docs
An introduction to reactive programming
Functional Reactive Game Programming – RxJS Breakout | manu.ninja
第 12 屆 iT 邦幫忙鐵人賽::用 30 天向世界宣告,這一年來鋼鐵般的歷練
RxJS with React Hooks for state management - LogRocket Blog
christianalfoni - RxJs the smartest dumbest tool ever
christianalfoni - Creating apps with observables
Introduction to Functional Reactive Programming with RxJS
10 Need-to-Know RxJS Functions with Examples
Learn RxJS in 60 Minutes for Beginners - Free Crash Course - YouTube
MVC to FRP by Gleb Bahmutov - Cycle Conf. Copenhagen 2016 - YouTube
slide notes
Building realtime applications with CycleJS and RxJS - Pusher Blog
Pubsub
PubSub for communicating between React Components - Coding Stuff - Medium
lukeed/vegemite: A Pub/Sub state manager you'll love... or hate
Cycle.js
Cycle.js
Cycle.js GitHub org
Basic examples › Cycle.js
Cycle.js Fundamentals from @andrestaltz on @eggheadio
egghead
RxJS Lessons - Screencast Video Tutorials @eggheadio
What Is RxJS? - RxJS Video Tutorial #free @eggheadio
Cycle.js Fundamentals - Course by @andrestaltz @eggheadio
RxPy
Valery Calderon - Reactive Programming with RxPy - PyCon 2018 - YouTube slide
C#
StateMachine Class (System.Activities.Statements) | Microsoft Docs
How to: Create a State Machine Workflow | Microsoft Docs
Simple state machine example in C#? - Stack Overflow
Inheriting INotifyPropertyChanged
is too verbose, use a MVVM framework.
How to: Implement Property Change Notification - WPF .NET Framework | Microsoft Docs
INotifyPropertyChanged Interface (System.ComponentModel) | Microsoft Docs
c# - Implementing INotifyPropertyChanged - does a better way exist? - Stack Overflow
class TxtViewModel : INotifyPropertyChanged
{
private string _path;
public string Path
{
get => _path;
set
{
if (value != _path)
{
_path = value;
OnPropertyChanged();
}
}
}
public event PropertyChangedEventHandler PropertyChanged;
protected virtual void OnPropertyChanged([CallerMemberName] string
propertyName = null)
{
PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
}
}
ReactiveUI
ReactiveUI - An advanced, composable, reactive model-view-viewmodel framework
ReactiveUI - Handbook
ReactiveUI - YouTube
ReactiveUI - A new way of thinking by Kent Boogaart - YouTube
Building A Cross Platform MVVM Pattern With ReactiveUI And Xamarin.Forms
Don't use ReactiveUI it's the opposite
Reactive property with ReactiveUI:
public class ReactiveViewModel : ReactiveObject
{
public ReactiveViewModel()
{
Clear = ReactiveCommand.Create(() => { Name = string.Empty; });
this.WhenAnyValue(x => x.Name)
.Select(userName => $"Hello, {userName}!")
.ToProperty(this, x => x.Greeting, out greeting);
}
public ReactiveCommand<Unit, Unit> Clear { get; }
private readonly ObservableAsPropertyHelper<string> greeting;
public string Greeting => greeting.Value;
private string name = string.Empty;
public string Name
{
get => name;
set => this.RaiseAndSetIfChanged(ref name, value);
}
}
Navigation/Routing
Advanced Avalonia+ReactiveUI+Routing example · Issue #3605 · AvaloniaUI/Avalonia
Samples
Avalonia/samples at master · AvaloniaUI/Avalonia
Reactive MVVM on the .NET Platform | by Artyom V. Gorchakov | Medium
Build Cross-Platform Reactive .NET Apps | by Artyom V. Gorchakov | Medium
reactiveui/ReactiveMvvm: Cross-platform ReactiveUI sample app built for a talk at MSK .NET conf.
kentcb/YouIandReactiveUI: The sample code for my book: You, I, and ReactiveUI
reactiveui/Camelotia: Cross-platform sample .NET GUI for cloud file management.
AvaloniaUI/Citrus.Avalonia: Modern styles for Avalonia controls.