mirror of
https://github.com/electron-vite/electron-vite-vue
synced 2025-02-26 04:40:10 +08:00
80 lines
2.9 KiB
Markdown
80 lines
2.9 KiB
Markdown
# electron-vite-vue
|
|
|
|
🥳 Really simple `Electron` + `Vue` + `Vite` boilerplate.
|
|
|
|
<!-- [](https://github.com/vitejs/awesome-vite) -->
|
|
<!-- [](https://app.netlify.com/sites/electron-vite/deploys) -->
|
|
<!-- [](https://github.com/electron-vite/electron-vite-vue/blob/main/LICENSE) -->
|
|
<!-- [](https://github.com/electron-vite/electron-vite-vue) -->
|
|
<!-- [](https://github.com/electron-vite/electron-vite-vue) -->
|
|
[](https://github.com/electron-vite/electron-vite-vue/actions/workflows/build.yml)
|
|
[](https://discord.gg/sRqjYpEAUK)
|
|
|
|
## Features
|
|
|
|
📦 Out of the box
|
|
🎯 Based on the official [template-vue-ts](https://github.com/vitejs/vite/tree/main/packages/create-vite/template-vue-ts), less invasive
|
|
🌱 Extensible, really simple directory structure
|
|
💪 Support using Node.js API in Electron-Renderer
|
|
🔩 Support C/C++ native addons
|
|
🖥 It's easy to implement multiple windows
|
|
|
|
## Quick Setup
|
|
|
|
```sh
|
|
# clone the project
|
|
git clone https://github.com/electron-vite/electron-vite-vue.git
|
|
|
|
# enter the project directory
|
|
cd electron-vite-vue
|
|
|
|
# install dependency
|
|
npm install
|
|
|
|
# develop
|
|
npm run dev
|
|
```
|
|
|
|
## Debug
|
|
|
|

|
|
|
|
## Directory
|
|
|
|
```diff
|
|
+ ├─┬ electron
|
|
+ │ ├─┬ main
|
|
+ │ │ └── index.ts entry of Electron-Main
|
|
+ │ └─┬ preload
|
|
+ │ └── index.ts entry of Preload-Scripts
|
|
├─┬ src
|
|
│ └── main.ts entry of Electron-Renderer
|
|
├── index.html
|
|
├── package.json
|
|
└── vite.config.ts
|
|
```
|
|
|
|
<!--
|
|
## Be aware
|
|
|
|
🚨 By default, this template integrates Node.js in the Renderer process. If you don't need it, you just remove the option below. [Because it will modify the default config of Vite](https://github.com/electron-vite/vite-plugin-electron-renderer#config-presets-opinionated).
|
|
|
|
```diff
|
|
# vite.config.ts
|
|
|
|
export default {
|
|
plugins: [
|
|
- // Use Node.js API in the Renderer-process
|
|
- renderer({
|
|
- nodeIntegration: true,
|
|
- }),
|
|
],
|
|
}
|
|
```
|
|
-->
|
|
|
|
## FAQ
|
|
|
|
- [C/C++ addons, Node.js modules - Pre-Bundling](https://github.com/electron-vite/vite-plugin-electron-renderer#dependency-pre-bundling)
|
|
- [dependencies vs devDependencies](https://github.com/electron-vite/vite-plugin-electron-renderer#dependencies-vs-devdependencies)
|