Lembrando que algumas coisas não são recomendadas hoje por motivos de segurança. Na documentação tem alguns exemplos e uma checklist recomendada a ser seguida. Portanto, para uma melhor comunicação entre o Renderer e o Main, existe o script Preload.
Particularmente, acho bem trabalhoso lidar com o Electron e já tive alguns problemas que me deixaram batendo a cabeça. Fico surpreso com a qualidade dos aplicativos que utilizam ele, como o VSCode, Notion e Discord.