Skip to content

Commit bd9ddc5

Browse files
os: recommending tui apps
1 parent f92fb11 commit bd9ddc5

File tree

3 files changed

+126
-0
lines changed

3 files changed

+126
-0
lines changed

CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@
2727
- os: accounts and privileges commands
2828
- os: system resources commands
2929
- dev: `dependencies-update` make task to update all GitHub actions to newest version
30+
- os: recommending tui apps
3031

3132

3233
### Changed

docs/os/tui/index.md

Lines changed: 123 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,123 @@
1+
# Terminal User Interface (TUI)
2+
3+
Terminal or Text User Interface apps are very effective, especially for people who prefer the keyboard over mouse for control.
4+
5+
TUI's tend to use a lot less resources and therefore perform very well, regardless of operating system and available resources (CPU, Memory, Disk space, etc.).
6+
7+
8+
??? INFO "NCurses - the original TUI library"
9+
[NCurses](https://invisible-island.net/ncurses/){target=_blank} is a programming library for creating textual user interfaces that work across a wide variety of terminals, written to optimize commands sent to the terminal to reduce latency when updating the displayed content.
10+
11+
[NCurses - Wikipedia](https://en.wikipedia.org/wiki/Ncurses){target=_blank .md.button}
12+
13+
14+
## Disk Management
15+
16+
17+
### Caligula
18+
19+
[Caligula](https://github.com/ifd3f/caligula) is a TUI for imaging disks, often used to create a USB boot disk for Linux distributions.
20+
21+
A TUI alternative to the `dd` command.
22+
23+
Install options:
24+
25+
- GitHub release binaries for Linux and MacOSX (darwin)
26+
- Arch Linux package `pacman -S caligula`
27+
- Debian Linux has a [request to package](https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1089012) discussion
28+
29+
Caligula is created with the [Rust Language](/engineering-playbook/programming-languages/rust/index.md) and can be installed via the `caligula` crate.
30+
31+
![Caligula copying an image to /dev/sdb](https://github.com/ifd3f/caligula/raw/main/images/verifying.png){align=left loading=lazy style="height:150px;width:150px"}
32+
33+
34+
## OS Monitoring
35+
36+
### Bottom Btm
37+
38+
[bottom (btm)](https://github.com/ClementTsang/bottom){target=_blank} graphic process & system monitor.
39+
40+
=== "Debian Linux"
41+
42+
```shell
43+
apt install
44+
```
45+
46+
=== "Arch Linux"
47+
48+
```shell
49+
sudo pacman -S btm
50+
```
51+
52+
![bottom (btm) in action](https://github.com/ClementTsang/bottom/raw/main/assets/demo.gif){loading=lazy}
53+
54+
55+
### ncdu disk usage
56+
57+
[ncdu](https://terminaltrove.com/ncdu/) is an ncurses disk usage analyzer.
58+
59+
=== "Debian Linux"
60+
61+
```shell
62+
apt install ncdu
63+
```
64+
65+
=== "Arch Linux"
66+
67+
```shell
68+
sudo pacman -S ncdu
69+
```
70+
71+
![ncdu disk usage analyzer](https://cdn.terminaltrove.com/m/a9ec3580-7859-4db7-be9f-ebd27578ab8d.png){loading=lazy}
72+
73+
74+
## Version Control
75+
76+
### LazyGit
77+
78+
A Git client...
79+
80+
81+
### Gitu
82+
83+
[Gitu](https://terminaltrove.com/gitu/){target=_blank} git client inspired by Magit.
84+
85+
86+
![Gitu](https://cdn.terminaltrove.com/m/5bd52d18-974e-408c-8b00-88efe4e5d9bf.gif){loading=lazy}
87+
88+
=== "Arch Linux"
89+
90+
```shell
91+
sudo pacman -S gitu
92+
```
93+
94+
95+
## API tools
96+
97+
### fx json navigator
98+
99+
[fx] for viewing and effectively navigating JSON. A TUI version of `jq`.
100+
101+
![Fx navigating JSON data](https://cdn.terminaltrove.com/m/34e03e9f-e7fc-4a99-8eb2-432d57291b25.gif){loading=lazy}
102+
103+
104+
### jwt-ui
105+
106+
[jwt-ui](https://terminaltrove.com/jwt-ui/) Decoding and encoding JSON Web Tokens, for inspecting and debugging.
107+
108+
[:fontawesome-brands-github: GitHub releases](https://github.com/jwt-rs/jwt-ui/releases){target=_blank .md-button}
109+
110+
=== "Arch Linux"
111+
112+
```shell
113+
pacman -S jwt-ui
114+
```
115+
116+
![jwt-ui](https://cdn.terminaltrove.com/m/a32f27a1-d1c9-4428-98b1-9e0fc3bb87a1.png){loading=lazy}
117+
118+
119+
###
120+
121+
[](){target=_blank} git client inspired by Magit.
122+
123+
![](){loading=lazy}

mkdocs.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -197,6 +197,8 @@ nav:
197197
- Accounts & permissions: os/command-line/commands/accounts-permissions.md
198198
- System resources: os/command-line/commands/system-resources.md
199199
- Scheduled tasks: os/command-line/commands/cron.md
200+
- TUI Apps:
201+
- os/tui/index.md
200202
- Linux:
201203
- Overview: os/linux/index.md
202204
- Debian:

0 commit comments

Comments
 (0)