Вообще, смысл MVVM - есть состояние приложения, графический интерфейс отрисовывается в соответствии с этим состоянием, остается только написать функции, которые изменяют это состояние, никаких прямых манипуляций (типа document.getElementById не актуально) с DOM делать не надо
1) Можно и так сказать
2) Нужна среда разработки
nodejs, потом сборщик проекта webpack или parcel или gulp (лучше parcel сначала, он проще в понимании, и у него есть HMR, можно этот пример взять за основу
https://github.com/parcel-bundler/ex...aster/hyperapp
после того, как это будет установлено и настроено, запускаем и после изменения файлов в папке src обновления должны сами "засосаться" в браузер и обновиться на странице согласно состоянию приложения...
там в файле package.json есть команда build, после того как приложение написано, запускаем build должна появиться папка build и в ней будут файлы, все эти файлы заливаешь куда надо %)
как-то так...