Оптимизируя скорость загрузки, я решил перейти на третью версию Nuxt.js: он работает с Vue3, поддерживает Composition API и работает в паре со сборщиком Vite, который обеспечивает отличную производительность. «Почему бы и нет?» — подумал я и начал установку обновленной версии. После установки я стал организовывать компоненты так, как мне нравится, а именно: шаблон отдельно во vue-файле, TypeScript отдельно в ts-файлах. Честно сказать, перевод компонентов был довольно легким, так как до этого я использовал vue-property-decorator для работы с TypeScript. Основное неудобство заключалось в переводе компонентов Vuetify, но это тоже не вызвало особых затруднений, так как надо было пройтись везде и поменять получение props в слотах. После того как все компоненты были переведены на новые рельсы, я проверил, что все работает, и продолжил оптимизировать приложение.