Решал подобную задачу с минимальными затратами на вёртку: сделал обычную форму (с бутстрапом), где нужно было заполнить поля, форма шлётся на бэк.
Бэк на пхп, там развернул PHPOffice. На сервере лежит шаблон нужного документа. PHPOffice подменяет в шаблоне переменные на данные из формы, и предлагает их скачивать. Если на клиенте (у того кто заполняет форму) нет ворда — можно предлагать скачивание в пдф, хром так точно имеет встроенные средства для отображения, и можно распечатать сразу