π₯³ Really simple Electron
+ Vue
+ Vite
boilerplate.
π¦ Out of the box
π― Based on the official vue-ts template, 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
npm create electron-vite
+ βββ¬ electron
+ β βββ¬ main
+ β β βββ index.ts entry of Electron-main
+ β βββ¬ preload
+ β βββ index.ts entry of Electron-preload
βββ¬ src
β βββ main.ts entry of Electron-renderer
βββ index.html
βββ package.json
βββ vite.config.ts
Put Node.js packages in dependencies
e.g. electron-store
sqlite3
serilaport
mongodb
...others
Put Web packages in devDependencies
e.g. vue
vue-router
vuex
pinia
element-plus
ant-design-vue
axios
...others
See more π dependencies vs devDependencies
e.g. node-fetch
execa
got
...others
npm i vite-plugin-esmodule -D
- Configure in vite.config.ts
import esmodule from 'vite-plugin-esmodule'
export default {
plugins: [
esmodule(['got', 'execa', 'node-fetch']),
],
}