The motion detection takes place in the browser with JavaScript which analyzes and quantifies RGB value differences. HTML5 takes care of the camera. An email server is still required - HTML5 doesn't cover that of course. This works with up-to-date Firefox, Chrome, Edge, and Opera browsers on Windows, Mac, and Android (the OS specific browsers running as applicable on various platforms). I am currently aware of just Safari and iOS on iPhone/iPad not working - the camera view shows all black and I have not yet attempted to solve.