Yeah javascript has to be known a bit anyway, that is one big reason I like bucklescript, it does not try to hide away javascript via some difficult to use interface like Elm ports, but rather lets you properly type and declare things (ala typescripe or so) via its normal in-built FFI interface.