3.9 KiB
Blowfish
🐡 Simple Electron-based desktop app to retrieve and display your total Ocean Token balances.
Made with ♥ by Matthias Kretschmann
Say thanks with OCEAN or ETH: 0xf50F267b5689b005FE107cfdb34619f24c014457
Say thanks with BTC: 3DiHNMt875UWa2j73qFpr3cVB9foFhYArc
Features
- show Ocean Token balances from a list of Ethereum account addresses
- show a total balance of all account balances
- convert those balances against multiple currencies
- re-fetches everything automatically every minute
- balances are fetched via etherscan.io API
- spot prices are fetched from coingecko.com API
- detects dark appearance setting and switches to dark theme automatically (macOS only)
- detects system accent color and uses it as primary color (macOS & Windows only)
- Touch Bar support (macOS only)
- detects system locale for number formatting
- currently highly optimized for macOS, your mileage on Windows or Linux may vary
Download
You can download pre-built binaries for macOS, Linux, and Windows from the Releases page.
The binaries are not code-signed so opening them on macOS will result in a warning. To be able to get around this warning:
- Right-click on the app icon, and choose Open
- In the dialog, click Open
Alternatively, you can build the app on your system.
Development
The main app is a React app in src/renderer/
wrapped within an Electron app defined in src/main/
.
Clone, and run:
# Clone this repository
git clone git@github.com:kremalicious/blowfish.git
cd blowfish
# Install dependencies
npm install
# Run the app in dev mode
npm start
Configuration
The app has a settings screen where you can add your account addresses.
When building the app yourself, you can configure more in the src/config.js
file:
Key | Description |
---|---|
conversions |
Array defining the currencies the Ocean balance is converted to. Every currency listed here will appear in the ticker buttons. |
refreshInterval |
Defines the interval prices and balances are refetched. |
oceanTokenContract |
Contract address of the Ocean Token. You should not change this. |
Build packages
npm run dist
Will build and package the app into platform specific packages for macOS, Windows & Linux.
On a Mac and Linux machine, packaging requires wine
and rpm
in your PATH
. To install on macOS with Homebrew:
brew install wine rpm