add better js support
again lot of stuff