33 lines
2.2 KiB
Markdown
33 lines
2.2 KiB
Markdown
# Tauri + Vue 3 + TypeScript
|
|
|
|
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](https://v3.vuejs.org/api/sfc-script-setup.html#sfc-script-setup) to learn more.
|
|
|
|
## Recommended IDE Setup
|
|
|
|
- [VS Code](https://code.visualstudio.com/) + [Volar](https://marketplace.visualstudio.com/items?itemName=Vue.volar) + [Tauri](https://marketplace.visualstudio.com/items?itemName=tauri-apps.tauri-vscode) + [rust-analyzer](https://marketplace.visualstudio.com/items?itemName=rust-lang.rust-analyzer)
|
|
|
|
## 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 Take Over mode by following these steps:
|
|
|
|
1. Run `Extensions: Show Built-in Extensions` from VS Code's command palette, look for `TypeScript and JavaScript Language Features`, then right click and select `Disable (Workspace)`. By default, Take Over mode will enable itself if the default TypeScript extension is disabled.
|
|
2. Reload the VS Code window by running `Developer: Reload Window` from the command palette.
|
|
|
|
You can learn more about Take Over mode [here](https://github.com/johnsoncodehk/volar/discussions/471).
|
|
|
|
## Building
|
|
|
|
### Prequisites
|
|
- Install Rust: `curl https://sh.rustup.rs -sSf | sh`
|
|
- libsoup2.4-dev installed if Linux: `sudo apt install libsoup2.4-dev`
|
|
- Node v18.20 installed and currently active if you're using nvm
|
|
|
|
### Build Instruction
|
|
|
|
1. Install latest pnpm `curl -fsSL https://get.pnpm.io/install.sh | sh -` or upgrade `pnpm add -g pnpm`
|
|
2. Setup the .env of the root project folder, you should deploy the self hosted backend first
|
|
3. Run `pnpm install` on root project folder
|
|
4. Run `pnpm dev:gql-codegen` on this folder
|
|
5. Run `pnpm tauri dev` to run debug mode (optional)
|
|
6. Run `pnpm tauri build` to build release mode
|
|
- `pnpm tauri build --target aarch64-apple-darwin` for Apple Sillicon |