Skip to content

Starter project for Vue.js 3 applications using TypeScript and Vite

License

Notifications You must be signed in to change notification settings

alstelmach/vite-vuetify-ts-starter

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Vue 3 starter template

logo

This template should help get you started developing with Vue 3 and Typescript in Vite. The template uses Vue 3 <script setup> SFCs, check out the script setup docs to learn more.

Includes vue-router and Pinia 1.

In addition, ESLint, Stylelint, and Prettier are also included and are set to be executed automatically at runtime and commit. (Since these settings are set strictly, please relax yourself.)

Also, when the development server is executed, it is checked in real time by vite-plugin-checker.

First define VITE_APP_TITLE in your .env file.

Recommended IDE Setup

VSCode + Volar (and disable Vetur).

And use Volar Takeover Mode for better performance.

Commands

It is designed to be close to create-vue commands.

Command Description
dev Start devserver.
clean Clear devserver cache.
type-check Check vue markup.
lint Run ESLint and prettier.
lint:style Run Stylelint.
test Run vitest
test:unit Run Unit test
coverage Output Coverage Report.
build Build for production.
build:analyze Execute Bundle Analyzer
build:clean Clear production build files.
build-only Build for production without checking. For Deploy use.
preview Run the program generated by the production build.

Type Support For .vue Imports in TS

Since TypeScript cannot handle type information for .vue imports, they are shimmed to be a generic Vue component type by default. In most cases this is fine if you don't really care about component prop types outside of templates. However, if you wish to get actual prop types in .vue imports (for example to get props validation when using manual h(...) calls), you can enable Volar's .vue type support plugin by running Volar: Switch TS Plugin on/off from VSCode command palette.

Troubleshooting

When adding or deleting files, an error may occur and even if the error is corrected, it may not be reflected in devserver. In that case, stop devserver and delete all the files in the node_modules/.vite directory. You can also run it with the clean command.

Npm Scripts outputs MODULE_NOT_FOUND.

Due to yarn issues, it may not work properly if the path contains non-ASCII characters (such as 日本語 or 한국어, 中文 etc.).

Footnotes

  1. Pinia is the recommended state management library to replace Vuex in the next Vue. see https://github.com/vuejs/rfcs/discussions/270#discussioncomment-2066856

About

Starter project for Vue.js 3 applications using TypeScript and Vite

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • TypeScript 61.9%
  • Vue 32.1%
  • SCSS 2.9%
  • HTML 1.6%
  • Dockerfile 1.5%