mirror of
https://github.com/alex8088/electron-vite.git
synced 2026-04-29 17:28:15 +08:00
The `clearLine` and `writeLine` helpers use TTY-only methods (`clearLine`, `cursorTo`, `moveCursor`) without checking `process.stdout.isTTY`, causing builds to crash in non-interactive environments like CI or piped output. See error I got in my CI environment: ``` vite v7.3.1 building ssr environment for production... ✗ Build failed in 7ms ✓ 0 modules transformed. ✗ Build failed in 9ms error during build: [vite:isolate-entries] Could not load virtual:isolate-entries: [vite:transform-reporter] process.stdout.clearLine is not a function ```
electron-vite
Next generation Electron build tooling based on Vite
Documentation | Getting Started | create-electron
Features
- ⚡️ Vite powered and use the same way.
- 🛠 Pre-configure with sensible defaults optimized for Electron.
- 💡 Optimize asset handling for Electron main process.
- 🚀 Fast HMR & hot reloading.
- 🔥 Isolated build for multi-entry application development.
- ✨ Simplify multi-threading development.
- 🔒 Compile code to v8 bytecode to protect source code.
- 🔌 Easy to debug in IDEs such as VSCode or WebStorm.
- 📦 Out-of-the-box support for TypeScript, Vue, React, Svelte, SolidJS and more.
Usage
Install
npm i electron-vite -D
Development & Build
In a project where electron-vite is installed, you can use electron-vite binary directly with npx electron-vite or add the npm scripts to your package.json file like this:
{
"scripts": {
"start": "electron-vite preview",
"dev": "electron-vite dev",
"prebuild": "electron-vite build"
}
}
Configuration
When running electron-vite from the command line, electron-vite will automatically try to resolve a config file named electron.vite.config.js inside project root. The most basic config file looks like this:
// electron.vite.config.js
export default {
main: {
// vite config options
},
preload: {
// vite config options
},
renderer: {
// vite config options
}
}
Getting Started
Clone the electron-vite-boilerplate or use the create-electron tool to scaffold your project.
npm create @quick-start/electron@latest
Currently supported template presets include:
| JavaScript | TypeScript |
|---|---|
| vanilla | vanilla-ts |
| vue | vue-ts |
| react | react-ts |
| svelte | svelte-ts |
| solid | solid-ts |
Contribution
See Contributing Guide.
License
MIT © alex.wei
Languages
TypeScript
95.4%
JavaScript
4.6%