### Complete RxBeach Example Source: https://github.com/ardoq/rxbeach/blob/master/docs/README.md This example demonstrates a full RxBeach application flow, including action creation, state reduction, side-effect handling, and UI connection. It requires understanding of RxJs, state management patterns, and component-based UI development. ```javascript enum Module { DASHBOARD, … } // action creator const showModule = actionCreator("[navigation] show module"); /* When invoked , will produce st. like: const action = { type: Symbol("[navigation] show module"), payload: Module.DASHBOARD, meta: { dispatchedAt: new Date(), dispatchedBy: new Error() } }; */ // state type NavigationState = { selectedModule: Module; }; const defaultNavigationState: NavigationState = { selectedModule: Module.DASHBOARD }; // reducer const handleShowModule = reducer( showModule, // could also be another stream (state: NavigationState, selectedModule) => ({ ...state, selectedModule // could also do some calculations / transformations on it })); // reduced state stream const reducers = [handleShowModule]; const navigation$ = persistentReducedStream( 'navigation$', defaultNavigationState, reducers ); // persistent reduced streams are started by the state stream registry stateStreamRegistry.startReducing(); // (Side-)effects via routines: const logModuleChange = routine( ofType(showModule), // filter extractPayload(), tap(module => console.log(`Showing module ${module}`)) ); subscribeRoutine(navigation$, logModuleChange) // UI type ViewModel = NavigationState; const View = ({ selectedModule }: ViewModel) =>

Navigating to: {selectedModule}