# zoxide

> Smart cd replacement that remembers frequently used directories for quick navigation

Stars: 40.4k · Language: Rust · License: MIT · Categories: Shell

- Repository: https://github.com/ajeetdsouza/zoxide
- Website: https://crates.io/crates/zoxide
- Page: https://www.trmn.sh/tools/zoxide

## Install

- Homebrew: `brew install zoxide`
- Cargo: `cargo install zoxide --locked`
- Install Script: `curl -sSfL https://raw.githubusercontent.com/ajeetdsouza/zoxide/main/install.sh | sh`

## Overview

zoxide is a directory navigation tool that replaces the standard cd command with intelligent frequency-based jumping. It tracks which directories you visit most often and allows you to navigate to them using partial matches and fuzzy search.

The tool uses a ranking algorithm to prioritize directories based on usage frequency and recency. Users can jump to directories with commands like `z foo` to match the highest-ranked directory containing "foo", or `z foo bar` to match directories containing both terms. It also supports interactive selection through `zi` which integrates with fzf for browsing options.

zoxide supports all major shells including bash, zsh, fish, PowerShell, and others. It works across Linux, macOS, Windows, and BSD systems. The tool maintains compatibility with regular cd functionality while adding the intelligence layer, so commands like `z ~/foo` and `z ../` work as expected alongside the smart matching features.

### Installation

```bash
# via Homebrew
brew install zoxide
```

```bash
# via Cargo
cargo install zoxide --locked
```

```bash
# via Install Script
curl -sSfL https://raw.githubusercontent.com/ajeetdsouza/zoxide/main/install.sh | sh
```

![zoxide tutorial demonstration](https://media.trmn.sh/cached/61a25561e579eed9b7005dee328dcd974df4b8a216049e13141240f5b86707a1.webp)

## Alternatives

- [Nushell](https://www.trmn.sh/tools/nushell.md): Structured data shell that treats commands and files as typed data rather than raw text streams (Rust, 40.8k stars)
- [fish](https://www.trmn.sh/tools/fish.md): Interactive command line shell with syntax highlighting, autosuggestions, and tab completions that work without configuration (Rust, 34.4k stars)
- [atuin](https://www.trmn.sh/tools/atuin.md): Shell history management with SQLite storage, search interface, and encrypted sync across machines (Rust, 32.2k stars)
- [starship](https://www.trmn.sh/tools/starship.md): Cross-shell prompt that displays contextual information about Git repos, programming languages, and system status (Rust, 60.6k stars)
- [genact](https://www.trmn.sh/tools/genact.md): Terminal program that prints fake activity output (compilers, builds, botnets, downloads) to look busy. Runs natively or in a browser via WebAssembly. (Rust, 12.2k stars)

## Guides

- [Jump between directories with zoxide](https://www.trmn.sh/guides/zoxide-smarter-cd): Install zoxide, load it in bash, zsh or fish, jump with z and zi, import your autojump or z history, and replace cd with --cmd cd.

---

Canonical: https://www.trmn.sh/tools/zoxide
