Skip to content

matijaoe/vue-starter

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

64 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

Vue โœ• UnoCSS starter template

Fully featured Vue 3 starter template

๐ŸŒž ๐ŸŒš
Light mode Dark mode

Features

  • โšก๏ธ Vue 3, Vite, pnpm
  • ๐Ÿ—‚ File based routing, fully typed
  • ๐Ÿ“ฆ Auto imported components
  • ๐Ÿซง Auto imported APIs
  • ๐ŸŽจ UnoCSS - The instant on-demand atomic CSS engine
  • ๐Ÿ‘ฝ Pure CSS icons powered by Iconify - Over 100,000 icons across 100+ icon packs
  • ๐Ÿ Pinia - The Vue Store that you will enjoy using
  • ๐Ÿ› ๏ธ VueUse - Collection of essential Vue Composition Utilities
  • ๐Ÿ’ช๐Ÿป TypeScript
  • ๐Ÿงน ESLint / matijaoe config
  • โ˜๏ธ Deploy with zero config

Plugins

UI Frameworks

Vite Plugins

Use the template

GitHub Template

Create a repo from this template on GitHub

Local

Clone the template locally, with no git history (powered by unjs/giget)

npx giget gh:matijaoe/vue-starter <name>
# Install dependencies (if no pnpm installed, run: npm install -g pnpm)
pnpm i

# Start dev server
pnpm dev

# Build for production
pnpm build

# Deploy anywhere
pnpm deploy:vercel # vercel
pnpm deploy:ntl # netlify
pnpm deploy:surge # surge.sh

Type Support for .vue Imports in TS

TypeScript cannot handle type information for .vue imports by default, so we replace the tsc CLI with vue-tsc for type checking. In editors, we need TypeScript Vue Plugin (Volar) to make the TypeScript language service aware of .vue types.

If the standalone TypeScript plugin doesn't feel fast enough to you, Volar has also implemented a Take Over Mode that is more performant. You can enable it by the following steps:

  1. Disable the built-in TypeScript Extension
    1. Run Extensions: Show Built-in Extensions from VSCode's command palette
    2. Find TypeScript and JavaScript Language Features, right click and select Disable (Workspace)
  2. Reload the VSCode window by running Developer: Reload Window from the command palette.

Related