A minimal Electron tray app template with a single popup window and a simple settings dialog.
- System Tray Integration: Lives in your system tray for quick access
- Popup Window: Frameless, always-on-top window toggled from the tray
- Settings Dialog: Basic modal dialog pattern with localStorage persistence
- Auto-hide: Window hides when you click elsewhere or press
Escape
- Node.js 18+ installed
-
Install dependencies:
npm install
-
Run the app:
npm start
- Left-click the tray icon to toggle the window
- Right-click the tray icon to open the Quit menu
- Press
Escapeto hide the window
To create a distributable package:
npm run buildThis will create installers for your platform in the dist folder.
The template uses an emoji title for the tray by default. Update tray.setTitle() and tray.setToolTip() in main.js to customize it. If you want a real tray icon, switch to new Tray(nativeImage.createFromPath(...)) or a packaged asset.
- Update the title text and layout in
index.html - Add or change settings fields inside the dialog in
index.html - Modify CSS custom properties in
:rootfor quick visual tweaks
- Electron
- Vanilla JavaScript/HTML/CSS
MIT