Coin tracking for hackers
cointop
is a fast and lightweight interactive terminal based UI application for tracking and monitoring cryptocurrency coin stats in real-time. The interface is inspired by htop
.
- Quick sort shortcuts
- Custom key bindings config
- Vim inspired shortcut keys
- Fast pagination
- Charts for coins and global market graphs
- Fuzzy searching for finding coins
- Save and view favorite coins
- Color support
- Help menu
- Works on macOS, Linux, and Windows
Make sure to have go (1.4+) installed, then do:
go get -u github.com/miguelmota/cointop
You'll need additional font support for Windows WSL. Please see the wiki for instructions.
cointop is also available as a snap for Linux users.
sudo snap install cointop --stable
Running snap:
sudo snap run cointop
Note: snaps don't work in Windows WSL. See this issue thread.
To update make sure to use the -u
flag.
go get -u github.com/miguelmota/cointop
Use the refresh
command to update snap.
sudo snap refresh cointop --stable
Just run the cointop
command to get started:
$ cointop
List of default shortcut keys:
Key | Action |
---|---|
↑ | Move up |
↓ | Move down |
→ | Go to next page |
← | Go to previous page |
Page Up | Jump page up |
Page Down | Jump page down |
Home | Go to first line of page |
End | Go to last line of page |
Enter | Toggle [c]hart for highlighted coin |
Esc | Quit |
Space | Toggle coin as favorite |
Ctrl+c | Alias to quit |
Ctrl+d | Jump page down (vim inspired) |
Ctrl+n | Go to next page |
Ctrl+p | Go to previous page |
Ctrl+r | Force refresh data |
Ctrl+s | Save config |
Ctrl+u | Jump page up (vim inspired) |
Alt+↑ | Sort current column in ascending order |
Alt+↓ | Sort current column in descending order |
Alt+← | Sort column to the left |
Alt+→ | Sort column to the right |
F1 | Show help |
F5 | Force refresh data |
0 | Go to first page (vim inspired) |
1 | Sort table by [1] hour change |
2 | Sort table by [2]4 hour change |
7 | Sort table by [7] day change |
a | Sort table by [a]vailable supply |
c | Toggle [c]hart for highlighted coin |
f | Toggle show favorites |
g | Go to first line of page (vim inspired) |
G | Go to last line of page (vim inspired) |
h | Go to previous page (vim inspired) |
H | Go to top of table window (vim inspired) |
j | Move down (vim inspired) |
k | Move up (vim inspired) |
l | Go to next page (vim inspired) |
L | Go to last line of visible table window (vim inspired) |
m | Sort table by [m]arket cap |
M | Go to middle of visible table window (vim inspired) |
n | Sort table by [n]ame |
o | [o]pen link to highlighted coin on CoinMarketCap |
p | Sort table by [p]rice |
r | Sort table by [r]ank |
s | Sort table by [s]ymbol |
t | Sort table by [t]otal supply |
u | Sort table by last [u]pdated |
v | Sort table by 24 hour [v]olume |
q | [q]uit |
$ | Go to last page (vim inspired) |
? | Show help |
/ | Search (vim inspired) |
The first time you run cointop, it'll create a config file in:
~/.cointop/config
You can then configure the actions you want for each key:
(default ~/.cointop/config
)
[shortcuts]
"$" = "last_page"
0 = "first_page"
1 = "sort_column_1h_change"
2 = "sort_column_24h_change"
7 = "sort_column_7d_change"
"?" = "help"
"/" = "open_search"
G = "move_to_page_last_row"
H = "move_to_page_visible_first_row"
L = "move_to_page_visible_last_row"
M = "move_to_page_visible_middle_row"
a = "sort_column_available_supply"
"alt+down" = "sort_column_desc"
"alt+left" = "sort_left_column"
"alt+right" = "sort_right_column"
"alt+up" = "sort_column_asc"
down = "move_down"
left = "previous_page"
right = "next_page"
up = "move_up"
c = "toggle_row_chart"
"ctrl+c" = "quit"
"ctrl+d" = "page_down"
"ctrl+n" = "next_page"
"ctrl+p" = "previous_page"
"ctrl+r" = "refresh"
"ctrl+s" = "save"
"ctrl+u" = "page_up"
end = "move_to_page_last_row"
enter = "toggle_row_chart"
esc = "quit"
f = "toggle_show_favorites"
F1 = "help"
g = "move_to_page_first_row"
h = "previous_page"
home = "move_to_page_first_row"
j = "move_down"
k = "move_up"
l = "next_page"
m = "sort_column_market_cap"
n = "sort_column_name"
o = "open_link"
p = "sort_column_price"
pagedown = "page_down"
pageup = "page_up"
q = "quit"
r = "sort_column_rank"
s = "sort_column_symbol"
space = "toggle_favorite"
t = "sort_column_total_supply"
u = "sort_column_last_updated"
v = "sort_column_24h_volume"
Action | Description |
---|---|
first_page |
Go to first page |
help |
Show help |
last_page |
Go to last page |
move_to_page_first_row |
Move to first row on page |
move_to_page_last_row |
Move to last row on page |
move_to_page_visible_first_row |
Move to first visible row on page |
move_to_page_visible_last_row |
Move to last visible row on page |
move_to_page_visible_middle_row |
Move to middle visible row on page |
move_up |
Move one row up |
move_down |
Move one row down |
next_page |
Go to next page |
open_link |
Open row link |
open_search |
Open search field |
page_down |
Move one row down |
page_up |
Scroll one page up |
previous_page |
Go to previous page |
quit |
Quit application |
refresh |
Do a manual refresh on the data |
sort_column_1h_change |
Sort table by column 1 hour change |
sort_column_24h_change |
Sort table by column 24 hour change |
sort_column_24h_volume |
Sort table by column 24 hour volume |
sort_column_7d_change |
Sort table by column 7 day change |
sort_column_asc |
Sort highlighted column by ascending order |
sort_column_available_supply |
Sort table by column available supply |
sort_column_desc |
Sort highlighted column by descending order |
sort_column_last_updated |
Sort table by column last updated |
sort_column_market_cap |
Sort table by column market cap |
sort_column_name |
Sort table by column name |
sort_column_price |
Sort table by column price |
sort_column_rank |
Sort table by column rank |
sort_column_symbol |
Sort table by column symbol |
sort_column_total_supply |
Sort table by column total supply |
sort_left_column |
Sort the column to the left of the highlighted column |
sort_right_column |
Sort the column to the right of the highlighted column |
toggle_row_chart |
Toggle the chart for the highlighted row |
toggle_favorite |
Toggle coin as favorite |
toggle_show_favorites |
Toggle show favorites |
save |
Save config |
-
Q: Where is the data from?
- A: The data is from Coin Market Cap.
-
Q: What coins does this support?
- A: This supports any coin listed on Coin Market Cap.
-
Q: How often is the data polled?
- A: Data gets polled once every minute by default. You can press Ctrl+r to force refresh.
-
Q: I installed cointop without errors but the command is not found.
-
A: Make sure your
GOPATH
andPATH
is set correctly.export GOPATH=$HOME/go export PATH=$PATH:$GOPATH/bin
-
-
Q: What is the size of the binary?
- A: The executable is only ~1.9MB in size.
-
Q: How do I search?
- A: The default key to open search is /. Type the search query after the
/
in the field and hit Enter.
- A: The default key to open search is /. Type the search query after the
-
Q: Does this work on the Raspberry Pi?
- A: Yes, cointop works on the Rasperry Pi including the RPi Zero.
-
Q: How do I add/remove a favorite?
- A: Press the space key to toggle a coin as a favorite.
-
Q: How do I view all my favorites?
- A: Press f to toggle view all your favorites.
-
Q: How do I save my favorites?
- A: Press ctrl+s to save your favorites.
-
Q: I'm getting question marks or weird symbols instead of the correct characters.
-
A: Make sure that your terminal has the encoding set to UTF-8 and that your terminal font supports UTF-8.
You can also try running cointop with the following environment variables:
LANG=en_US.utf8 TERM=xterm-256color cointop
If you're on Windows WSL, please see the wiki for font support instructions.
-
-
Q: How do I install Go on Ubuntu?
- A: There's instructions on installing Go on Ubuntu in the wiki.
-
Q: I'm getting errors installing the snap in Windows WSL.
- A: Unfortunately Windows WSL doesn't support
snapd
which is required for snaps to run. See this issue thread.
- A: Unfortunately Windows WSL doesn't support
-
Q: How do I show the help menu?
- A: Press ? to toggle the help menu. Press q to close help menu.
Released under the Apache 2.0 license.