An Electron desktop starter built with Electron, Vite, React, TypeScript, Tailwind CSS, and shadcn/ui.
$ npm install$ npm run dev$ npm run lint
$ npm run test
$ npm run build# For windows
$ npm run build:win
# For macOS
$ npm run build:mac
# For Linux
$ npm run build:linuxsrc/main- Electron main process and native persistence logicsrc/preload- typed bridge between renderer and mainsrc/renderer/src- React UI, Tailwind styles, and shadcn/ui componentssrc/shared- shared types and validation helpers used across process boundaries
The starter includes a persisted Preferences dashboard:
- renderer edits local settings state
- preload exposes
window.api.preferences - main reads and writes
preferences.jsonin Electron's user data folder
This gives the project a real end-to-end feature without weakening Electron security boundaries.