I should be able to write the functionality you need. I will use bash and rust ( [login to view URL] ), in order to have the communication encrypted (bash script doing everything would be quite complex). In case of network failure, you may need to restart everything manually (as servers will be in different states). The performance will not be the best, probably, but enough for most cases. Applications will be able to detect that the keypresses are not real. I won't implement toggle keys (NumLock, CapsLock, ScrollLock), setting them to (on, off, off) respectively. Once I write the code, I will put an open-source version of it publicly (I obviously won't mention you nor share your passwords).