Small, focused Electron wrappers around popular web apps. Each app is its own workspace package with a shared Electron core for window/tray behavior.
- ChatGPT
- Discord
- GCP
- Gitlab
- Gmail
- Linear
- Notion
- Telegram
- Whatsup
- Node.js + pnpm
- Linux x64 (packaging is currently configured for linux-x64)
Install dependencies:
pnpm installPackage everything (builds each app and writes desktop entries):
pnpm packagePackage a single app:
cd ChatGPT
pnpm run prepackage
pnpm run package- Each app has an
index.tsentry that calls a shared lifecycle helper fromcommon/. - Rollup bundles
index.tsintobundle.jsusing the rootrollup.config.js. - Electron Packager creates
*-electron-linux-x64/in the app folder. - A Linux
.desktopfile is generated for each app in~/.local/share/applications/.
CHROMIUM_USER_DATA_PATH: Optional env var to override Electron's user data directory.- Tray/Badge: The shared lifecycle supports tray icons and optional badge rendering (configured per app).
common/: Shared Electron logic (window, tray, menu, external links, search helpers).- App folders: one per app (
ChatGPT/,Gmail/, etc.). scripts/andpostpackage.js: packaging helpers.
- Generated binaries and packaged folders may be present in the repo; avoid editing them manually.
- There are no automated tests; validate changes by running at least one app.
ISC