awesome-repositories.com
Blog
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectAboutHow we rankPressMCP server
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
junegunn avatar

junegunn/fzf

0
View on GitHub↗
81,017 stars·2,794 forks·Go·MIT·20 viewsjunegunn.github.io/fzf↗

Fzf

This project is a general-purpose command-line filter that provides an interactive interface for processing standard input streams. It enables real-time fuzzy searching, data selection, and transformation, allowing users to navigate complex information or file systems directly within their terminal. By utilizing a pipe-oriented architecture, it integrates into existing shell pipelines and workflows to facilitate efficient data exploration.

What distinguishes this tool is its highly extensible, event-driven design that allows for deep integration with external processes. It supports asynchronous data transformation and dynamic list reloading, enabling users to trigger shell commands or update content based on user interactions without blocking the interface. The system maintains selection identity across these updates, providing a consistent experience when managing large or streaming datasets.

The project offers a comprehensive suite of features for terminal user interface development, including multi-threaded search performance, configurable preview windows, and support for various terminal multiplexers. It provides extensive customization options for visual layout, key bindings, and search logic, allowing developers to build custom selection interfaces or automate complex shell tasks.

The tool is configured through environment variables and configuration files, supporting inline comments for maintainability. It is designed to be installed as a standalone command-line utility, with library integration options available for embedding its filtering capabilities into other applications.

Features

  • Fuzzy Search Engines - Filters candidate lists instantly using flexible fuzzy, exact, or prefix matching algorithms.
  • Matching Algorithms - Applies versatile matching strategies, including fuzzy, exact, and inverse logic, to refine search results.
  • Multi-Threaded Search Engines - Maintains high performance during complex filtering by distributing search tasks across multiple CPU cores.
  • Shell Productivity Tools - Boosts shell efficiency through intuitive fuzzy completion and streamlined history navigation.
  • Interactive Filters - Delivers an interactive interface for rapid searching and filtering of large datasets directly within the terminal.
  • Terminal Workflow Automations - Accelerates terminal workflows by integrating fuzzy completion and dynamic previews into standard command-line tasks.
  • Interactive Command-Line Filters - Enables real-time filtering, selection, and transformation of standard input streams via an interactive prompt.
  • Terminal User Interfaces - Renders interactive, text-based components and dynamic layouts to enhance terminal user experiences.
  • Stream Processing Utilities - Processes and filters data streams in real-time for seamless integration into command-line pipelines.
  • Pipe-based Data Collectors - Captures data from standard input streams to allow interactive selection and processing of piped content.
  • Shell Productivity Enhancements - Improves command discovery and navigation by embedding fuzzy completion and preview features into the shell.
  • Dynamic Content Refreshers - Updates interface content dynamically by binding shell commands to user interactions for real-time filtering.
  • Fuzzy Shell Completions - Provides fuzzy-matched completion for files, directories, and environment variables through native shell integration.
  • Shell History Managers - Upgrades shell history management by adding interactive fuzzy filtering and multi-select capabilities.
  • Awesome List - A community-curated directory that catalogs and links out to other open-source projects, rather than a standalone tool you run yourself.
  • Asynchronous Data Processing - Offloads command execution to background processes to keep the interface responsive during data filtering.
  • Event-Driven Action Bindings - Triggers custom shell commands or internal actions in response to user input and query changes.
  • Item Navigation and Selection - Supports keyboard and mouse-based navigation, selection, and multi-select operations within terminal interfaces.
  • Preview Panes - Displays content previews for selected items by executing shell commands and rendering output in a secondary pane.
  • CLI Utilities - Command-line fuzzy finder.
  • Command Line Environment - General-purpose command line fuzzy finder.
  • Command Line Helpers - General-purpose command-line fuzzy finder.
  • Command Line Interface - General-purpose command-line fuzzy finder.
  • Command Line Interfaces - General-purpose command-line fuzzy finder.
  • Command Line Tools - Interactive fuzzy search tool for the command line.
  • Command Line Utilities - Fuzzy finder for command line workflows.
  • Developer Tools and CLIs - Command-line fuzzy finder.
  • Developer Utilities - Command-line fuzzy finder.
  • File Management and Navigation - A command-line fuzzy finder for files and strings.
  • General Utilities - Command-line fuzzy finder.
  • General Utility Libraries - Command-line fuzzy finder.
  • Search and Discovery - A general purpose command-line fuzzy finder.
  • Security Utilities - Command-line fuzzy finder.
  • Terminal Productivity - General-purpose command-line fuzzy finder.
  • Terminal Utilities - Interactive fuzzy search tool for the command line.
  • Text Processing and Search - General-purpose fuzzy finder for command-line workflows.
  • Real-time Stream Monitors - Filters live data streams in real-time to provide an interactive interface for monitoring and selecting output.
  • Terminal Multiplexer Integrations - Native integration allows selection interfaces to appear directly within terminal multiplexer panes or popups.
  • Terminal-Agnostic Renderers - Escape sequences manage terminal output to ensure visual layouts remain consistent across diverse terminal emulators.
  • Version Control Completions - Dynamic completion of version control objects like branches and commits streamlines navigation within repository workflows.
  • Shell Key Bindings - Configurable shortcuts inject selected history, file paths, or directory names directly into the active shell prompt.
  • Parallel Processing - Work queues distribute search tasks across multiple CPU cores to maximize computational throughput.
  • Rendering Optimizations - Memory-efficient handling of large datasets and log streams ensures smooth, responsive rendering during high-volume data updates.
  • Selection Persistence Managers - Identity-based tracking preserves user selections even when the underlying data source is refreshed or reloaded.
  • Fuzzy Filtering Engines - High-performance filtering logic manages candidate lists to execute complex matching syntax on incoming data streams.
  • Log Stream Buffers - Memory-constrained buffers drop older entries to allow continuous monitoring of live log streams.
  • Boundary Matching Engines - Quote-wrapped syntax enforces strict word-boundary matching to isolate specific string occurrences.
  • Relevance Ranking Engines - Ranking algorithms prioritize file name matches within paths to increase the accuracy of search results.
  • Search Result Optimizations - Precise query syntax and word-based filtering enhance the speed and relevance of search results.
  • Logical Search Operators - Executes logical OR operations by combining search terms with a pipe character to match any of the specified alternatives.
  • Multi-term Search Processors - Space-delimited search terms are evaluated as distinct filters to refine results from complex input lists.
  • Search Syntax Extensions - Defines custom search and transformation actions to modify input queries dynamically during the filtering process.
  • Selection Content Previews - Customizable preview commands display file metadata or content in real-time as items are highlighted.
  • Unix Socket Interfaces - Exposes a local domain socket interface for external processes to manipulate state and retrieve selections programmatically.
  • Exclusion Patterns - Respects ignore patterns during file system traversal by integrating external search tools as the primary source for file lists.
  • Asynchronous Element Transformations - Background command execution prevents interface blocking during intensive data retrieval operations.
  • Column Pinning - Fixed column positioning maintains visibility of essential data fields during horizontal navigation.
  • Visual Style Presets - Activates predefined color schemes to instantly modify interface elements like borders, highlights, and information positioning.
  • Interface Display Modes - Adjusts visual geometry to fullscreen, height-constrained, or popup window modes for seamless integration into terminal environments.
  • Terminal Output Formatters - Multi-line formatting options improve readability through custom markers and spacing between entries.
  • Inline Image Renderers - Specialized protocols render graphical images directly within the preview window.
  • Interface Appearance Customization - Style presets and color configurations allow full customization of the interface appearance.
  • Loading Indicators - Visual status indicators appear within the interface to signal ongoing background processing tasks.

Star history

Star history chart for junegunn/fzfStar history chart for junegunn/fzf

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Open-source alternatives to Fzf

Similar open-source projects, ranked by how many features they share with Fzf.
  • tldr-pages/tldrtldr-pages avatar

    tldr-pages/tldr

    62,933View on GitHub↗

    This project is a community-driven repository of simplified, example-based reference guides for command-line tools. It functions as an open-source knowledge base designed to provide concise, practical usage examples that help developers navigate complex software without the need for lengthy technical documentation. The system relies on a decentralized architecture where independent client applications fetch and render documentation locally. This approach ensures that reference materials remain accessible offline while supporting a wide variety of user interfaces across desktop, mobile, and we

    Markdownandroidbsdcheatsheet
    View on GitHub↗62,933
  • burntsushi/ripgrepBurntSushi avatar

    BurntSushi/ripgrep

    65,112View on GitHub↗

    ripgrep is a command-line utility designed for searching through large file trees and source code repositories. It functions as a recursive text processor that traverses directories to locate and display matching patterns, serving as a high-performance alternative to traditional search tools. The tool distinguishes itself through a focus on execution speed and intelligent file handling. It utilizes a finite automata-based regular expression engine to ensure linear time complexity and employs hardware-level acceleration for literal byte sequence scanning. By integrating with version control sy

    Rustclicommand-linecommand-line-tool
    View on GitHub↗65,112
  • sharkdp/fdsharkdp avatar

    sharkdp/fd

    43,362View on GitHub↗

    This project is a high-performance command-line utility designed for rapid filesystem navigation and file discovery. It enables users to locate files and directories within large project structures using recursive search, pattern matching, and metadata-aware filtering. By employing multi-threaded parallel traversal, it provides an efficient way to explore complex directory trees. What distinguishes this tool is its ability to integrate directly into terminal workflows and automate file management tasks. It automatically respects version control ignore files and hidden file settings, ensuring

    Rustclicommand-linefilesystem
    View on GitHub↗43,362
  • peco/pecopeco avatar

    peco/peco

    7,892View on GitHub↗

    Peco is an interactive text filter and fuzzy finder for the terminal. It serves as a terminal user interface selection tool that filters standard input in real-time using fuzzy matching and regular expressions. The tool preserves and renders ANSI color escape sequences from piped input streams while performing matching logic on plain-text versions. It supports multi-stage filtering, allowing users to freeze result sets to create a new base for subsequent refinements. Capability areas include advanced search filtering with negative matching, multi-item selection, and the ability to pipe selec

    Go
    View on GitHub↗7,892
See all 30 alternatives to Fzf→

Frequently asked questions

What does junegunn/fzf do?

This project is a general-purpose command-line filter that provides an interactive interface for processing standard input streams. It enables real-time fuzzy searching, data selection, and transformation, allowing users to navigate complex information or file systems directly within their terminal. By utilizing a pipe-oriented architecture, it integrates into existing shell pipelines and workflows to facilitate efficient data exploration.

What are the main features of junegunn/fzf?

The main features of junegunn/fzf are: Fuzzy Search Engines, Matching Algorithms, Multi-Threaded Search Engines, Shell Productivity Tools, Interactive Filters, Terminal Workflow Automations, Interactive Command-Line Filters, Terminal User Interfaces.

What are some open-source alternatives to junegunn/fzf?

Open-source alternatives to junegunn/fzf include: tldr-pages/tldr — This project is a community-driven repository of simplified, example-based reference guides for command-line tools. It… sharkdp/fd — This project is a high-performance command-line utility designed for rapid filesystem navigation and file discovery.… burntsushi/ripgrep — ripgrep is a command-line utility designed for searching through large file trees and source code repositories. It… peco/peco — Peco is an interactive text filter and fuzzy finder for the terminal. It serves as a terminal user interface selection… clvv/fasd — fasd is a frecency-based path navigator and POSIX shell productivity tool designed to accelerate navigation between… jlevy/the-art-of-command-line — This project is a comprehensive technical reference and educational resource designed to improve proficiency with…