Skip to main content

A fast keyboard-driven directory navigator for the terminal.

Project description

cd-browser

Stop typing paths. Browse them.

cd-browser is a fast keyboard-driven directory navigator for the terminal. It lets you explore directory trees visually and jump to any folder instantly.

cd-browser demo

Why cd-browser?

Working in the terminal often means:

  • typing long directory paths
  • navigating deep folder trees
  • repeating cd .. multiple times

cd-browser provides an interactive terminal UI that allows you to browse directories with the keyboard and return the selected path directly to your shell.

Features

  • 🚀 Fast visual navigation of directory trees
  • ⌨️ Fully keyboard-driven workflow
  • 🌲 Expand and collapse directories
  • 📜 Navigation history inside the session
  • 🖥 Native terminal interface
  • 🔁 Works with Bash, Zsh and other shells
  • ⚡ Returns the selected path to the shell
  • 🔎 Press . to toggle hidden directories

Quick Demo

Run:

cd_

Browse directories using the arrow keys and press Enter to jump directly to the selected folder.

Documentation

See the documentation index:

docs/index.md

Installation

Install the project in user mode:

pip install cd-browser

Important: After installation, run this to set up the cd_ command:

cd_browser_post_install

This interactive script will guide you through enabling cd_ in your shell.

Shell Integration For cd_

Because a Python subprocess cannot directly change the parent shell directory, use a shell wrapper that captures the final path printed by cd_browser.

Bash or Zsh example:

cd_() {
  local target
  target="$(cd_browser)" || return

  if [ -n "$target" ] && [ -d "$target" ]; then
    cd "$target"
  fi
}

After adding the function to your shell profile, reload it:

source ~/.bashrc

Or:

source ~/.zshrc

Then use:

cd_
  • Dentro de cd_browser, presiona . para alternar la visualización de carpetas ocultas.

Uninstall

If the project was installed with pip, remove it with:

pip uninstall cd-browser

Important: After uninstalling, remove the cd_() function from your shell profile (~/.bashrc or ~/.zshrc) to clean up completely.

Developer Setup

Recommended setup:

make dev

Run the application in development mode:

python -m app.main

Useful development commands:

make fix
make quality
make run

Template Origin

This project was created from the Python AI Dev Template.

The original template documentation has been preserved in README_TEMPLATE.md so the project-specific README can focus on cd-browser usage and development.

For the original template setup, conventions, and generic workflow notes, see README_TEMPLATE.md.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cd_browser-0.2.1.tar.gz (14.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

cd_browser-0.2.1-py3-none-any.whl (11.5 kB view details)

Uploaded Python 3

File details

Details for the file cd_browser-0.2.1.tar.gz.

File metadata

  • Download URL: cd_browser-0.2.1.tar.gz
  • Upload date:
  • Size: 14.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.9

File hashes

Hashes for cd_browser-0.2.1.tar.gz
Algorithm Hash digest
SHA256 d50e54a6a15f330d1f86d015867cd62d69611b887226f8c56d0b80ac5ec6ba9e
MD5 e87b52ee30aad7fca4089f9fb0b57d18
BLAKE2b-256 759c4244352aa730c4758351e2ab4303dde236e703e22ce0b88db6c5334dc938

See more details on using hashes here.

File details

Details for the file cd_browser-0.2.1-py3-none-any.whl.

File metadata

  • Download URL: cd_browser-0.2.1-py3-none-any.whl
  • Upload date:
  • Size: 11.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.9

File hashes

Hashes for cd_browser-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 f279ddfc3176e202c2e872c328b3ab41f693d67f3aad6cece771b4295144edeb
MD5 5b1bc5a5603fd0c19bc07eeda603052d
BLAKE2b-256 d1231015d6aeda94ff3374bf43b95193e1f8d75cbbe300252d9687762f7d2c47

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page