Tauri Vue3 Template
April 4, 2026 ยท View on GitHub

Tauri Vue3 Template
A modern desktop application template built with Tauri v2 and Vue 3.
Features
- ๐จ Beautiful UI with Vuetify 3 Material Design
- ๐ Multi-language support (i18n)
- ๐ Dark/Light theme
- ๐ฆ State management with Pinia
- ๐๏ธ File system operations with Tauri plugins
- ๐ System notifications
- ๐ Fast and lightweight Rust backend
- ๐ฑ Cross-platform (Windows, macOS, Linux)
Use cases
- vrm2sl - VRM (glTF) mesh model to Second Life avatar converter.
- Drop Compress Image - Next generation image converter. (avif, webp, jpeg-xl, webp, jpeg-li, zopfli png)
Tech Stack
Frontend
- Vue 3 (Composition API)
- TypeScript
- Vuetify 3
- Pinia
- Vue I18n
- Vite
Backend
- Rust
- Tauri v2
- Tauri Plugins (dialog, fs, notification, opener, os)
Development
Prerequisites
- Node.js >= 24
- pnpm >= 10
- Rust >= 1.94
- Tauri CLI
Setup
# Install dependencies
pnpm install
# Run development server
pnpm run dev:tauri
Build
# Build for production
pnpm run build:tauri
Customization
1. Configure Application Settings
Edit .env file to customize your application:
# Application Information
APP_NAME=Your App Name
APP_NAME_KEBAB=your-app-name
APP_DESCRIPTION=Your app description
APP_SUMMARY=Short summary
# Author Information
AUTHOR_NAME=Your Name
AUTHOR_EMAIL=your@email.com
# GitHub Repository
GITHUB_USER=username
GITHUB_REPO=repository-name
# URLs
VITE_PROJECT_URL=https://github.com/username/repository
HOMEPAGE_URL=https://yourdomain.com
DOCS_URL=https://yourdomain.com/docs
2. Update Package Metadata
The build scripts automatically generate package files from .env:
- Chocolatey:
.choco/app.nuspec.templateโ.choco/{APP_NAME_KEBAB}.nuspec - Homebrew:
.homebrew/app.rb.templateโ.homebrew/{APP_NAME_KEBAB}.rb
3. Synchronize Version Numbers
After changing VERSION in .env, run the version sync script to update all configuration files:
Windows (PowerShell):
.\scripts\update-version.ps1
macOS/Linux (Bash):
./scripts/update-version.sh
This will automatically update:
frontend/package.jsonbackend/tauri.conf.jsonbackend/Cargo.toml
4. Other Customizations
- Replace icons in
backend/icons/ - Customize
frontend/src/components/MainContent.vuewith your own logic - Add your own Tauri commands in
backend/src/command.rs - Update localization files in
frontend/src/locales/ - Edit
backend/setup-vcpkg.shandbackend/setup-vcpkg.ps1to statically link any vcpkg libraries your app needs
Project Structure
.
โโ frontend/ # Frontend (Vue 3 + Vite + Vuetify)
โ โโ src/
โ โ โโ components/ # UI components
โ โ โโ composables/ # Reusable logic (hooks)
โ โ โโ locales/ # i18n YAML files
โ โ โโ plugins/ # Vuetify, i18n, etc.
โ โ โโ store/ # Pinia stores
โ โ โโ styles/ # Global styles
โ โ โโ types/ # Frontend types
โโ backend/ # Rust backend (Tauri)
โ โโ src/
โ โโ main.rs # Tauri entry
โ โโ command.rs # Tauri commands
โ โโ error.rs # App error types
โ โโ logging.rs # Logging helpers
โ โโ lib.rs # Public exports
โโ docs/ # Documentation site (Nuxt)
โโ scripts/ # Utility scripts (version sync, etc.)
โโ .env # App configuration
โโ ReadMe.md # Project overview
- frontend/src is the Vue frontend and UI logic.
- backend/src is the Rust backend for Tauri commands.
- docs is the static documentation site.
License
ยฉ2026 by Logue. Licensed under the MIT License.
This template is not officially endorsed by tauri.
๐จ Crafted for Developers
This template is built with a focus on UI/UX excellence and modern developer experience. Maintaining it involves constant testing and updates to ensure everything works seamlessly.
If you appreciate the attention to detail in this project, a small sponsorship would go a long way in supporting my work across the Vue.js and Metaverse ecosystems.