Home Assistant is an open-source home automation platform running on Python 3.
The team promise “installation in less then a minute” and powerful logic allows you to create macros, for example – dim the lights when you start watching Netflix on your Chromecast. The system uses your wireless router to track which devices are connected and it runs a webserver on port 8123 (http://127.0.0.1:8123/) and a JSON API (http://127.0.0.1:8123/api/).
The Home Assistant core is responsible for Home Control. It has four parts to make this possible. The Event Bus facilitates the firing and listening of events. This is the beating heart of Home Assistant. The State Machine keeps track of the states of things. Fires a state_changed event when a state has been changed. The Service Registry listens on the event bus for call_service events and allows other code to register services. The Timer will send every 10 seconds a time_changed event on the event bus.
Home Assistant supports a range of hardware devices currently including Philips Hue, Belkin WeMo, Google Chromecast, Netgear, Tomato and OpenWRT routers as well as Tellstick devices and sensors.
Check out the link below to try the software or get involved with the project.