Aper is a framework for real-time sharing of application state over WebSockets. Its use cases include browser-based collaboration tools and multiplayer in-browser games.
Specifically, Aper provides scaffolding to represent your program as a state machine, as well as the infrastructure to keep that state machine synchronized across multiple instances running in your users' browsers.
Aper integrates with Yew on the client side, and Actix for the server. Although the focus is on browser-based apps running in WebAssembly and communicating over WebSocket, the core state machine scaffolding can be used independent of the client/server architecture, and even with non-WebSocket protocols.
Aper is rapidly evolving. Consider this a technology preview. See the list of issues outstanding for version 1.0
- Documentation
- Getting Started with Aper guide
- Redwords, a multiplayer word game built with Aper.
- Examples
- Talk on Aper for Rust Berlin (20 minute video)