Look at home assistant as a hub. It's a fully open source python-3 based system that runs happily on a raspberry pi. It has many ways of interfacing with just about every device including local-only things like zwave, ZigBee, or lutron.
They also have support for some wifi based things that are still local-only, but I tend to treat them as hostile and firewall them off, and even then I don't really like having them as they tend to be made by unknown manufacturers and have pretty shitty first party apps.
They also have support for some wifi based things that are still local-only, but I tend to treat them as hostile and firewall them off, and even then I don't really like having them as they tend to be made by unknown manufacturers and have pretty shitty first party apps.