Clean Reactive Architecture is a formalized and coherent architecture for reactive client applications - applications powered by React, Angular, Vue, Jetpack Compose, SwiftUI, or any framework based on the observer pattern.
Clean Reactive Architecture composes with what teams already use rather than replacing it.
-
Technical agility. The architecture supports technical agility - architectural units are small and independent, work splits along interfaces, and a change stays contained to the unit responsible for it. Agile process is only part of agile development - technical agility is the rest.
-
Shared understanding. The architecture and development methodology are formalized so that the system is understood in the same way by everyone. A developer joining a feature, a teammate picking up another person's work, or an AI agent given a task all share the same model and can implement it consistently.
-
Cross-platform portability. The architecture is the same across platforms, therefore porting is not redesigning the application but reimplementing units against the same diagram using platform-specific tools and libraries.
- Architecture
- Development Methodology
- Samples:
- One-file React App
- React App
- Angular App
- Next.js App
- Flutter App TBA
The architecture and development methodology are stable enough to use by application architects. Introduction guide for beginners is a work in progress. Any related discussions, issues, and contributions are welcome.