30 open-source projects similar to lotabout/skim, ranked by shared indexed features. Tags may describe platforms or build tools rather than the same primary purpose. Check each project’s use case, license, and deployment requirements before treating it as a replacement.
Skim is a cross-platform interactive fuzzy finder that runs as a terminal application, a Rust library, a Vim and Neovim plugin, and a shell integration tool. It provides real-time filtering and selection from lists of items, supporting keyboard and mouse navigation, live preview panes, and multi-select functionality across Linux, macOS, and Windows. The tool distinguishes itself through a composable query expression tree that supports fuzzy, exact, inverse, prefix, suffix, and logical AND/OR operators, combined with a Smith-Waterman scoring engine that penalizes typos and gaps for natural rel
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
fzf-lua is a fuzzy finder integration for Neovim that utilizes fzf to search files, buffers, and project symbols. It serves as a code navigation framework providing a dynamic result generator that populates search windows using real-time shell commands or custom Lua functions. The project distinguishes itself through specialized integration tools for Git and Language Server Protocols. It includes a Git search interface for navigating commits, branches, stashes, and diffs, alongside an LSP integration tool that bridges language server providers to locate definitions and references across a cod
mini.nvim is a comprehensive library of independent modules designed to extend Neovim with a wide array of navigation, user interface, and text manipulation tools. It serves as a modular plugin collection, a UI toolkit for creating custom statuslines and notifications, and a package manager for installing and pinning external plugins from Git. The project provides a specialized fuzzy picker framework for filtering files and symbols, an LSP completion engine with interactive snippet expansion, and a dedicated plugin test framework that uses headless editor instances and remote procedure calls
Cointop is a terminal-based cryptocurrency dashboard that displays real-time market data, prices, and portfolio values in a text-based interface. It aggregates data from multiple cryptocurrency exchange APIs and presents it in an interactive terminal user interface with vim-inspired keyboard shortcuts for navigation and control. The application distinguishes itself by embedding an SSH server that allows remote access to the dashboard from any device, with persistent client configuration tied to individual SSH keys. It includes a fuzzy search system for quickly finding coins by name, desktop n
Zed is a terminal-based code editor built in Rust that provides a full-featured editing experience with familiar keybindings, mouse support, and multiple cursors. It runs entirely in the terminal while offering capabilities typically found in graphical editors, including split panes, a command palette, and integrated language server protocol support for real-time diagnostics, completions, go-to-definition, and code actions across multiple languages. The editor distinguishes itself through a plugin system that runs sandboxed TypeScript plugins in a QuickJS runtime, with an asynchronous bridge
Vis is a terminal-based modal text editor that utilizes vi keybindings and a system of structural regular expressions. It functions as a scriptable environment where Lua is used for configuration, custom key mappings, and plugin development. The editor distinguishes itself through a syntax highlighting system based on Parsing Expression Grammars and a pattern matching engine that treats text as a structure for complex search and replace operations. It also integrates directly with the system shell, allowing users to pipe text ranges to external commands and capture the resulting output. The
Telescope is a fuzzy search interface for the Neovim text editor, designed to provide rapid access to files, buffers, and project-wide data. It functions as a keyboard-driven command palette that allows users to locate and navigate complex directory structures and codebase content through real-time filtering. The system is built on a modular architecture that utilizes a pluggable interface to fetch data from diverse sources, including file systems, version control repositories, and language server protocols. By separating input collection from data retrieval, it maintains a decoupled state ma
fzf.vim is a Vim fuzzy finder plugin that integrates the fzf command-line interface into the editor. It serves as a text editor search interface and buffer and file navigator, allowing users to quickly locate files, buffers, and text patterns. The plugin functions as a bridge to the fzf command-line tool, enabling users to search for files, grep code content, and navigate git commits, marks, and tags. It also provides a mechanism to send multiple fuzzy search results directly into the Vim quickfix list for batch editing. Broad capabilities include interactive text completion for paths and wo
TextMate is a programmable text editor designed for software development and project management. It functions as a highly customizable environment where users can define language-specific behaviors, syntax highlighting rules, and automated workflows to suit their individual development needs. The editor distinguishes itself through a modular, bundle-based extensibility model that allows for deep integration with system shell commands. By piping document buffers through external scripts and command-line tools, users can perform complex text transformations, automate file lifecycle tasks, and b
Broot is an interactive terminal file manager designed for navigating, searching, and manipulating complex file system hierarchies. It provides a visual tree-based interface that allows users to explore disk contents, manage file operations, and execute shell commands directly within the command line environment. The tool distinguishes itself through real-time fuzzy searching and recursive tree traversal, which filter directory structures as you type to maintain a clear, relevant view of the file system. It integrates version control status directly into the navigation view, displaying branch
Zellij is a terminal multiplexer and workspace manager designed to organize command-line sessions into persistent, reconfigurable layouts. It functions as a terminal plugin framework, allowing users to extend their environment with modular, event-driven components that interact with the host through a structured message-passing protocol. The project distinguishes itself through a layout-engine-based architecture that decouples visual pane arrangements from process execution, enabling automated and repeatable terminal workflows. It includes integrated support for web-based remote access, facil
This project is a Lua-based file explorer plugin for Neovim that provides a sidebar tree interface for navigating project directories. It functions as a file system node manipulator and a Git-integrated file manager, allowing users to interact with their project structure directly within the editor. The plugin distinguishes itself by integrating version control status into the visual tree, enabling users to track, stage, and unstage files through the explorer interface. It also features a public API that allows external scripts to trigger internal functions and subscribe to system events. Th
Scoop is a command-line package manager for Windows designed to automate the installation, configuration, and lifecycle management of software. It utilizes a manifest-driven architecture where applications are defined in structured text files, allowing for consistent and repeatable deployments. By leveraging shim-based path management and symlink-based version switching, it enables users to install and toggle between multiple software versions without cluttering the global system environment. The project distinguishes itself through its focus on portability and clean system integration. It su
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 asynchrono
Saws is an interactive shell wrapper and resource manager for the AWS CLI. It provides a command-line environment designed to enhance the execution of AWS commands through predictive text, resource suggestions, and improved navigation. The tool implements fuzzy searching and case-insensitive autocomplete to accelerate the discovery and selection of cloud resources. It reduces manual entry via a system of command shortcuts and aliases that map short strings to complex commands. The interface includes local caching of resource data to minimize API requests, persistent command history, and the
lf is a terminal-based file manager and TUI file explorer that provides keyboard-driven navigation for browsing and organizing files and directories. It operates as a shell-integrated tool that synchronizes the current working directory with the calling shell and supports vi-style keybindings for filesystem operations. The project distinguishes itself through its ability to render images directly in the terminal via the SIXEL graphics protocol and its shell-driven execution model, which allows users to extend functionality using external shell scripts and commands. It also implements a server
Click is a Python framework for building command-line interfaces. It provides a declarative approach to defining command structures, allowing developers to map functions to command-line arguments, options, and nested groups using decorators. The framework handles the complexities of parameter parsing, type validation, and help documentation generation automatically. The project distinguishes itself through its hierarchical context system, which propagates configuration and state across nested commands, and its environment-aware parameter resolution that prioritizes command-line inputs, enviro
x-cmd is an AI agent orchestrator, cloud infrastructure CLI, and cross-platform package manager that provides an enhanced POSIX shell toolkit. It integrates large language models directly into the terminal for chatting, code generation, and the execution of agentic workflows, while offering a framework for building interactive terminal user interface components. The project distinguishes itself by deploying containerized AI agents within isolated sandboxes, provisioning them with specialized skills and headless browser automation capabilities. It further streamlines development through a unif
This project is a collection of reusable Bash scripts designed for system administration, automation, and command-line utility development. It provides a modular library of tools that leverage POSIX-compliant shell execution and standard stream processing to perform tasks directly within Unix-like environments without requiring additional language runtimes. The collection distinguishes itself by offering a broad range of interactive and automated capabilities, including guided command-line menus, time-tracking timers, and remote file synchronization. These scripts are environment-aware, capab
lazyssh is a keyboard-driven SSH connection manager and server browser designed for remote host administration. It provides a centralized interface to organize, filter, and launch secure shell sessions to multiple remote servers. The tool features a fuzzy-search server browser that allows for rapid location of hosts by alias, IP address, or tags. It includes an integrated configuration editor for managing host entries and a session orchestrator that handles proxy jumps, port forwarding, and identity file assignments. The system further automates connectivity through automatic identity file d
This project is a Neovim file navigation plugin and workspace manager that allows users to mark and jump between frequent files. It functions as a system for organizing high-priority files into specific layouts and window splits, utilizing a persistent list and index-based shortcuts to streamline movement across a project. The tool includes a terminal session integrator that bridges the editor with a terminal multiplexer. This integration enables the orchestration of windows and panes, allowing users to switch between development shells and coding sessions or manage terminal instances by inde
Homer is a JSON-driven web dashboard and self-hosted application portal that serves as a centralized entry point for server-hosted tools. It functions as a static home page and service launcher, organizing application links and shortcuts into a configurable grid. The project distinguishes itself through its ability to act as a service status dashboard, fetching real-time health metrics and version data from remote APIs to display on service cards. It further supports a progressive web app model for standalone installation and includes a fuzzy search system to quickly locate services across th
rich-cli is a terminal rich text renderer and data visualizer that transforms raw text and structured data into styled console output. It functions as a command line markup processor, converting Markdown and custom markup into formatted text with clickable links and colors. The tool specializes in terminal content rendering for various formats, including syntax-highlighted source code, JSON data with consistent indentation, and CSV tables. It also supports the rendering of Jupyter notebooks and provides a terminal content pager for navigating long files and remote content via a scrollable int
Tailspin is a regex-based text colorizer and terminal log viewer designed to transform plain text streams into colorized output. It functions as a command line log highlighter and tailer that applies syntax highlighting to logs using regular expressions. The tool distinguishes itself through its ability to monitor files in real time and pipe live output through a highlighter. It recognizes and colors common data types such as IP addresses, UUIDs, HTTP methods, JSON objects, dates, and memory pointers. Users can define custom highlight styles and regex patterns to assign specific colors to uni
Powerlevel9k is a customizable visual theme and plugin framework for the Zsh shell. It functions as a command line interface enhancer and environment dashboard, providing a configurable layout system for adding informational segments to the left and right sides of the shell prompt. The system tracks development context and version control status, displaying active branches and repository states. It also monitors cloud infrastructure, showing active profiles and cluster contexts, alongside programming language versions and environment data. The prompt includes real-time system status indicato
Vimium-C is a keyboard-driven browser extension that provides a vim-like navigation tool for web browsers. It functions as a customizable key mapper and accessibility tool, allowing users to interact with web content and manage browser tabs and windows without a mouse. The project distinguishes itself through advanced key mapping capabilities, including the ability to define contextual shortcuts based on the website host and remap keyboard layouts. It implements mode-specific mappings to prevent command conflicts and allows for specific keyboard mappings to function within text input boxes.
This project is a Vim configuration framework and development environment that transforms the basic text editor into a full-featured integrated development environment. It provides a curated set of settings and a comprehensive plugin suite to support professional software development workflows. The environment includes specialized tools for polyglot code execution and project navigation, allowing users to run source files in multiple languages via single keystrokes and locate files using fuzzy searching. It also integrates version control workflows, enabling the management of Git operations a
This project is a Python framework for building command-line interfaces by converting standard functions into executable programs. It uses type hints to automatically infer and generate argument parsers, validation logic, and help documentation, allowing developers to define complex terminal applications through simple function signatures. The framework distinguishes itself through a decorator-driven registration system that enables the construction of hierarchical command trees. It supports dependency injection to manage shared state and runtime configuration across subcommands, and it utili
This project is a keyboard-driven menu framework and application launcher for X11 and Wayland desktop environments. It serves as a customizable system control interface for building themed popup menus and applets. The framework allows for extensive visual style customization and the creation of themed launchers through configuration files and style presets. It enables the construction of personalized Linux desktop interfaces by separating functional applets into a modular script architecture. The system covers broad management capabilities, including hardware control for audio and brightness