explaingit

denisidoro/navi

Analysis updated 2026-06-24

17,122RustAudience · developerComplexity · 2/5Setup · easy

TLDR

An interactive cheatsheet tool for the terminal. Search command snippets, fill in arguments with dynamic suggestions, and run them without leaving the shell.

Mindmap

mindmap
  root((navi))
    Inputs
      Cheatsheet files
      Shell context
      Git repos
    Outputs
      Interactive menu
      Executed commands
      Argument suggestions
    Use Cases
      Recall forgotten commands
      Build a personal cheatsheet
      Share team snippets
    Tech Stack
      Rust
      Shell
      Tmux
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Stop googling git syntax and recall it from an interactive menu

USE CASE 2

Bind navi to a shell shortcut like Ctrl-G to search snippets inline

USE CASE 3

Build a personal cheatsheet of commands you keep forgetting

USE CASE 4

Import community cheatsheets from a git repo to expand your library

What is it built with?

RustShellTmux

How does it compare?

denisidoro/navigfx-rs/wgpugetzola/zola
Stars17,12217,12817,056
LanguageRustRustRust
Setup difficultyeasyhardeasy
Complexity2/54/52/5
Audiencedeveloperdeveloperdeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · easy Time to first run · 5min

In plain English

Navi is an interactive cheatsheet tool for the command line, written in Rust. The problem it solves is simple: you know a command exists but can't remember the exact syntax. Instead of googling or digging through documentation, you type "navi" in your terminal and get a searchable, interactive menu of commands you can run directly. You can browse cheatsheets by category, pick a command, and navi will prompt you to fill in any arguments, showing suggested values from your system dynamically. For example, a git cheatsheet might list "Change branch" and then show you your actual local branches as options, so you never have to remember or type them manually. Cheatsheets are written in plain text files with a simple format. You can write your own, download ones shared by the community, or import them from git repositories. Navi also works with third-party cheatsheet sources. It can be used as a standalone command, as a keyboard shortcut widget inside your shell (similar to how Ctrl-R searches command history), or even inside Tmux sessions (a tool for running multiple terminal windows at once). You would reach for navi when you frequently forget command-line syntax, want to stop copy-pasting from Stack Overflow, or want to build a personal library of shortcuts for tasks you do regularly. It is built in Rust and installable via common package managers.

Copy-paste prompts

Prompt 1
Install navi via Homebrew and bind it to Ctrl-G in zsh so I can search snippets while typing
Prompt 2
Write a navi cheatsheet file for my most-used kubectl commands with dynamic namespace suggestions
Prompt 3
Import a community navi cheatsheet repo and pin the categories I actually use
Prompt 4
Set up navi inside Tmux so I can pop a cheatsheet menu in any pane

Frequently asked questions

What is navi?

An interactive cheatsheet tool for the terminal. Search command snippets, fill in arguments with dynamic suggestions, and run them without leaving the shell.

What language is navi written in?

Mainly Rust. The stack also includes Rust, Shell, Tmux.

How hard is navi to set up?

Setup difficulty is rated easy, with roughly 5min to a first successful run.

Who is navi for?

Mainly developer.

Open on GitHub → Explain another repo

This repo across BitVibe Labs

Scan in gitsafehub Deploy in gitdeployhub denisidoro on gitmyhub

Verify against the repo before relying on details.