I agree that the client's performance is important. I'm hoping to avoid frameworks so that any issues will be as clear as possible, but maintenance will tell if that's a good decision.
I threat the main process as a backend api and use ipc as a broker between that and the ui. The renderer process does nothing but show text and icons. From that point on one can have fun with threads and all :-)