Rust compiles to WebAssembly and has a few web frameworks already. Many other languages also have web frameworks and compile to JS. Today it is possible to do web development and avoid JS entirely.
Aside from the lack of autocompletion, passing rust closures to js land (DOM) is extremely janky as well. However, that might be caused by my lack of experience with rust.
(If you are curious, this is what I made: https://github.com/SCLeoX/non-grid-path-finder)
https://developer.mozilla.org/en-US/docs/WebAssembly/Concept...