Skip to content
back to achievements

Case study · LookSuite

Client project · AugmentProject period2025 – Present

Real-time administration

Pushed changes made in the admin portal or the desktop app to both over WebSockets as events, so everything stays in sync with no polling, refresh or restart.

01

Why

When an administrator, or a user, changes something in the system, the other side needs to see it immediately, without a refresh or a restart.

02

Decision

The backend sends an event whenever something changes, over WebSockets. Both the desktop application and the admin portal receive it, so a change made in either place reaches both. That is the synchronization. Nothing asks the server repeatedly whether there is an update. The system updates only when an event happens. The app also protects the user's work: if an administrator changes something while the user is editing the same form, the app flags the conflict instead of overwriting it.

How it fits

Hover or focus a box for the story behind it.

A change made in the admin portal or the desktop app reaches the backend, which sends an event over WebSockets to both, so they stay in sync without polling. The app drops and restores the connection around sleep, and flags an edit conflict instead of overwriting work.A changeGoing offlineEdit conflictSomeone changes something, either in the admin portal or in the desktop application.A change Portal or appThe backend sends an event over WebSockets whenever something changes. Nothing asks the server whether there is an update, so no resources are wasted checking.Backend Sends an eventThe desktop application receives the event and updates at once, with no refresh or restart.Desktop app Updates at onceThe admin portal receives the same event, so both sides stay in sync.Admin portal Same eventThe computer goes to sleep or the system goes offline.System offline Computer sleepsThe app drops the connection on purpose when the system goes offline.Disconnects On purposeWhen the system is back, the connection is restored automatically.Reconnects AutomaticA user is editing a form in the app.User editing A formAn administrator changes the same thing in the meantime.Admin changes it Same thingThe app flags the conflict instead of overwriting the user's work.Conflict flagged Work kept

A change made in the admin portal or the desktop app is sent as an event to both, so they stay in sync. Nothing keeps asking the server whether there is an update.

03

Alternatives considered

Polling, where each client keeps asking the server whether anything changed. I didn't consider it, because it wastes server resources: it keeps checking even when nothing has changed.

04

What I built

Implemented WebSocket-based real-time communication between administrative functionality and the desktop application.

Enabled relevant administrative changes to propagate to connected application instances without requiring users to manually refresh or restart the application.

05

Trade-offs

  • A long-lived connection has to be managed carefully: reconnecting, and handling edit conflicts. That is a large share of the code.
  • When the system goes offline, for example the computer sleeps, the connection is dropped on purpose. When it comes back, the connection is restored automatically. Keeping track of this is a real cost.

06

Outcome

Changes reach every connected application and the admin portal immediately, with no refreshing, and an open form isn't silently overwritten.

Technologies