├── src ├── vite-env.d.ts ├── assets │ └── logo.png ├── main.ts ├── shims-vue.d.ts ├── components │ └── Checker.vue └── App.vue ├── .gitignore ├── public └── favicon.ico ├── vite.config.ts ├── .prettierrc ├── index.html ├── tsconfig.json ├── package.json ├── .eslintrc.js ├── README.md └── yarn.lock /src/vite-env.d.ts: -------------------------------------------------------------------------------- 1 | /// 2 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .DS_Store 3 | dist 4 | dist-ssr 5 | *.local 6 | -------------------------------------------------------------------------------- /public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jenyus-Org/vite-vue3-starter/HEAD/public/favicon.ico -------------------------------------------------------------------------------- /src/assets/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jenyus-Org/vite-vue3-starter/HEAD/src/assets/logo.png -------------------------------------------------------------------------------- /src/main.ts: -------------------------------------------------------------------------------- 1 | import { createApp } from "vue"; 2 | import App from "./App.vue"; 3 | 4 | const app = createApp(App).mount("#app"); 5 | -------------------------------------------------------------------------------- /src/shims-vue.d.ts: -------------------------------------------------------------------------------- 1 | declare module "*.vue" { 2 | import { DefineComponent } from "vue"; 3 | const component: DefineComponent<{}, {}, any>; 4 | export default component; 5 | } 6 | -------------------------------------------------------------------------------- /vite.config.ts: -------------------------------------------------------------------------------- 1 | import vue from "@vitejs/plugin-vue"; 2 | import { join } from "path"; 3 | import { defineConfig } from "vite"; 4 | 5 | // https://vitejs.dev/config/ 6 | export default defineConfig({ 7 | plugins: [vue()], 8 | resolve: { 9 | alias: { 10 | "@": join(__dirname, "src"), 11 | }, 12 | }, 13 | }); 14 | -------------------------------------------------------------------------------- /.prettierrc: -------------------------------------------------------------------------------- 1 | { 2 | "tabWidth": 2, 3 | "semi": true, 4 | "singleQuote": false, 5 | "quoteProps": "as-needed", 6 | "trailingComma": "all", 7 | "bracketSpacing": true, 8 | "jsxBracketSameLine": false, 9 | "arrowParens": "always", 10 | "printWidth": 80, 11 | "endOfLine": "auto", 12 | "vueIndentScriptAndStyle": true 13 | } 14 | -------------------------------------------------------------------------------- /index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | Vite App 8 | 9 | 10 |
11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "target": "esnext", 4 | "module": "esnext", 5 | "moduleResolution": "node", 6 | "strict": true, 7 | "jsx": "preserve", 8 | "sourceMap": true, 9 | "resolveJsonModule": true, 10 | "esModuleInterop": true, 11 | "lib": ["esnext", "dom"], 12 | "baseUrl": ".", 13 | "paths": { 14 | "@/*": ["src/*"] 15 | } 16 | }, 17 | "include": ["src/**/*.ts", "src/**/*.d.ts", "src/**/*.tsx", "src/**/*.vue"] 18 | } 19 | -------------------------------------------------------------------------------- /src/components/Checker.vue: -------------------------------------------------------------------------------- 1 | 2 | 3 | 10 | 11 | 28 | -------------------------------------------------------------------------------- /src/App.vue: -------------------------------------------------------------------------------- 1 | 4 | 5 | 16 | 17 | 27 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "qv-checker", 3 | "version": "0.0.0", 4 | "scripts": { 5 | "dev": "vite", 6 | "lint": "eslint --ext .ts,vue --ignore-path .gitignore . --fix", 7 | "format": "prettier -w -u .", 8 | "build": "vue-tsc --noEmit && vite build", 9 | "serve": "vite preview" 10 | }, 11 | "dependencies": { 12 | "vue": "^3.0.5" 13 | }, 14 | "devDependencies": { 15 | "@typescript-eslint/eslint-plugin": "^4.25.0", 16 | "@typescript-eslint/parser": "^4.25.0", 17 | "@vitejs/plugin-vue": "^1.2.2", 18 | "@vue/compiler-sfc": "^3.0.5", 19 | "@vue/eslint-config-prettier": "^6.0.0", 20 | "@vue/eslint-config-typescript": "^7.0.0", 21 | "eslint": "^7.27.0", 22 | "eslint-plugin-prettier": "^3.4.0", 23 | "eslint-plugin-vue": "^7.10.0", 24 | "prettier": "^2.3.0", 25 | "typescript": "^4.3.2", 26 | "vite": "^2.3.4", 27 | "vue-tsc": "^0.0.24" 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /.eslintrc.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | root: true, 3 | env: { 4 | browser: true, 5 | es2021: true, 6 | node: true, 7 | }, 8 | extends: [ 9 | "plugin:vue/vue3-recommended", 10 | "eslint:recommended", 11 | "@vue/typescript/recommended", 12 | "@vue/prettier", 13 | "@vue/prettier/@typescript-eslint", 14 | ], 15 | parserOptions: { 16 | ecmaVersion: 2021, 17 | }, 18 | rules: { 19 | "no-console": process.env.NODE_ENV === "production" ? "warn" : "off", 20 | "no-debugger": process.env.NODE_ENV === "production" ? "warn" : "off", 21 | "@typescript-eslint/interface-name-prefix": "off", 22 | "@typescript-eslint/explicit-function-return-type": "off", 23 | "@typescript-eslint/explicit-module-boundary-types": "off", 24 | "@typescript-eslint/no-explicit-any": "off", 25 | "@typescript-eslint/no-non-null-assertion": "off", 26 | "@typescript-eslint/no-unused-vars": ["off", { argsIgnorePattern: "^_" }], 27 | "prettier/prettier": ["error", {}, { usePrettierrc: true }], 28 | }, 29 | }; 30 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Vue 3 + Typescript + Vite 2 | 3 | This template should help get you started developing with Vue 3 and Typescript in Vite. 4 | 5 | ## Recommended IDE Setup 6 | 7 | [VSCode](https://code.visualstudio.com/) + [Vetur](https://marketplace.visualstudio.com/items?itemName=octref.vetur). Make sure to enable `vetur.experimental.templateInterpolationService` in settings! 8 | 9 | ### If Using `