# IPFS Desktop without Electron ### Overview Rewrite IPFS Desktop in something other than Electron ### Team - @mvdan - @gozala - @lidel - @joeltg ### Goals - no electron - works on windows/macos/linux - systray app that runs go-ipfs - systray opens a webui in default browser - systray shows current state ### Stretch Goals - Request on local IPFS HTTP API from unknow origins, prompts user for access - Preferences (are there any tho?) persisted in a config file ### Implementation plan - Separate Go program which depends on go-ipfs and ipfs-webui - https://github.com/getlantern/systray for the system tray icon - https://github.com/sqweek/dialog for "access prompts" and other dialogs - We could use similar libraries for notifications if necessary Notes: - Cross-compilation might be tricky; both of those libs use cgo - We need people to test on: - Linux (mvdan, lidel) - Mac (joeltg) - Windows (mvdan via VM) ### UI design Systray - IPFS icon - Red(?) icon if the daemon is stopped - Green if running - ok to borrow from https://github.com/ipfs-shipyard/ipfs-companion/tree/master/add-on/icons - Menu items - Start/stop daemon - Open web UI (with $BROWSER?) - Own version with link to source - Options (enable or disable pubsub, ...) - but maybe not ### Resources - [Slack thread](https://protocollabs.slack.com/archives/C01KJCJM7M5/p1611749705008000)