One way to achive realtime capabilities in an app is polling.
monoblokk2-client
Node.js printer bindings