Esto puede ser hecho con Javascript pero una aplicación más compleja podría usar algo como C++ o Java.