Simon Karman

Cloud Consultant and Game Developer

Krmx Best Practices

A Krmx server and client using with a system architecture.

Published on 2023-11-23

Created by Simon Karman

If you've used Krmx before you know it can be tedious to manually sync state on server and client-side. To circumvent these issues, this mono repo sets up a Krmx server and client using a System architecture.


A System is a shared state store with predefined actions that uniformly alter that state on the server and clients. The clients use optimistic updates to give immediate feedback to the user.

It provides the following features.

  • Uniform state management
  • Optimistic updates at the Client-Side
  • Utilize React ContextAPI to get the state
  • Keep track of history to seamlessly let new clients join
  • Use batches of events to stream history to clients
  • Restore server state on restart by replaying history
Similar projects
If you like projects like this one you might also be intersted in other krmx-, typescript-, and websockets-projects.
Krmx Best Practices (krmx-best-practices)