|
1 | 1 | # Redis TUI Manager |
2 | 2 |
|
3 | 3 | [](https://github.com/davidbudnick/redis/actions/workflows/ci.yml) |
4 | | -[](https://github.com/davidbudnick/redis/actions/workflows/release.yml) |
| 4 | +[](https://github.com/davidbudnick/releases/workflows/release.yml) |
5 | 5 | [](https://goreportcard.com/report/github.com/davidbudnick/redis) |
6 | 6 | [](https://opensource.org/licenses/MIT) |
7 | 7 |
|
8 | 8 | A powerful terminal user interface (TUI) for managing Redis databases, built with Go and [Bubble Tea](https://github.com/charmbracelet/bubbletea). |
9 | 9 |
|
| 10 | +**Redis TUI** is a feature-rich Redis client for the terminal that lets you browse, edit, and manage your Redis keys with ease. Perfect for developers and DevOps engineers who prefer working in the command line. |
| 11 | + |
| 12 | +## Why Redis TUI? |
| 13 | + |
| 14 | +- **No GUI Required** - Manage Redis directly from your terminal over SSH |
| 15 | +- **Fast and Lightweight** - Built in Go for speed and minimal resource usage |
| 16 | +- **Full Redis Support** - Works with all Redis data types: strings, lists, sets, sorted sets, hashes, and streams |
| 17 | +- **Secure Connections** - TLS/SSL and SSH tunnel support for secure access |
| 18 | +- **Multiple Connections** - Save and switch between multiple Redis instances easily |
| 19 | + |
10 | 20 | ## Screenshots |
11 | 21 |
|
12 | 22 | ### Connection Management |
@@ -272,14 +282,82 @@ redis |
272 | 282 |
|
273 | 283 | Configuration is stored in `~/.config/redis-tui/config.json`. |
274 | 284 |
|
| 285 | +### Example Configuration |
| 286 | + |
| 287 | +```json |
| 288 | +{ |
| 289 | + "connections": [ |
| 290 | + { |
| 291 | + "id": 1, |
| 292 | + "name": "Local Redis", |
| 293 | + "host": "localhost", |
| 294 | + "port": 6379, |
| 295 | + "password": "", |
| 296 | + "db": 0, |
| 297 | + "use_tls": false |
| 298 | + }, |
| 299 | + { |
| 300 | + "id": 2, |
| 301 | + "name": "Production", |
| 302 | + "host": "redis.example.com", |
| 303 | + "port": 6379, |
| 304 | + "password": "your-password", |
| 305 | + "db": 0, |
| 306 | + "use_tls": true |
| 307 | + } |
| 308 | + ], |
| 309 | + "key_bindings": { |
| 310 | + "up": "k", |
| 311 | + "down": "j", |
| 312 | + "select": "enter", |
| 313 | + "back": "esc", |
| 314 | + "quit": "q", |
| 315 | + "help": "?", |
| 316 | + "refresh": "r", |
| 317 | + "delete": "d", |
| 318 | + "add": "a", |
| 319 | + "edit": "e", |
| 320 | + "filter": "/", |
| 321 | + "server_info": "i", |
| 322 | + "export": "E", |
| 323 | + "import": "I" |
| 324 | + }, |
| 325 | + "tree_separator": ":", |
| 326 | + "max_recent_keys": 20, |
| 327 | + "max_value_history": 50, |
| 328 | + "watch_interval_ms": 1000 |
| 329 | +} |
| 330 | +``` |
| 331 | + |
| 332 | +### Connection Options |
| 333 | + |
| 334 | +| Option | Description | |
| 335 | +| --- | --- | |
| 336 | +| `name` | Display name for the connection | |
| 337 | +| `host` | Redis server hostname or IP | |
| 338 | +| `port` | Redis server port (default: 6379) | |
| 339 | +| `password` | Redis password (optional) | |
| 340 | +| `db` | Redis database number (0-15) | |
| 341 | +| `use_tls` | Enable TLS/SSL connection | |
| 342 | +| `ssh_host` | SSH tunnel hostname (optional) | |
| 343 | +| `ssh_user` | SSH tunnel username (optional) | |
| 344 | +| `ssh_key_path` | Path to SSH private key (optional) | |
| 345 | + |
275 | 346 | ### Custom Keybindings |
276 | 347 |
|
277 | | -Keybindings can be customized in the configuration file under the `keybindings` section. |
| 348 | +Keybindings can be customized in the configuration file under the `key_bindings` section. All navigation and action keys can be remapped to your preference. |
278 | 349 |
|
279 | 350 | ## Requirements |
280 | 351 |
|
281 | | -- Go 1.21 or later |
| 352 | +- Go 1.21 or later (for building from source) |
282 | 353 | - A terminal that supports 256 colors |
| 354 | +- Redis server 4.0 or later |
| 355 | + |
| 356 | +## Supported Platforms |
| 357 | + |
| 358 | +- macOS (Intel and Apple Silicon) |
| 359 | +- Linux (amd64, arm64) |
| 360 | +- Windows (amd64) |
283 | 361 |
|
284 | 362 | ## Development |
285 | 363 |
|
@@ -320,3 +398,14 @@ Contributions are welcome! Please feel free to submit a Pull Request. |
320 | 398 | - [Lip Gloss](https://github.com/charmbracelet/lipgloss) - Styling library |
321 | 399 | - [Bubbles](https://github.com/charmbracelet/bubbles) - TUI components |
322 | 400 | - [go-redis](https://github.com/redis/go-redis) - Redis client |
| 401 | + |
| 402 | +## Related Projects |
| 403 | + |
| 404 | +If you're looking for Redis tools, you might also be interested in: |
| 405 | + |
| 406 | +- [redis-cli](https://redis.io/docs/ui/cli/) - Official Redis command line interface |
| 407 | +- [RedisInsight](https://redis.com/redis-enterprise/redis-insight/) - Official Redis GUI |
| 408 | + |
| 409 | +## Keywords |
| 410 | + |
| 411 | +redis, redis-cli, redis-client, redis-tui, redis-gui, redis-manager, terminal, tui, cli, go, golang, database, key-value, cache, devops, sysadmin |
0 commit comments