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
·
sharkdp avatar

sharkdp/bat

0
View on GitHub↗
59,284 stars·1,566 forks·Rust·Apache-2.0·30 views

Bat

This project is a command-line text viewer designed to enhance terminal output through automatic syntax highlighting and integrated file management. It functions as a replacement for standard system pagers, providing a readable interface for large text streams, source code, and markup files by applying color-coded formatting directly to the terminal output.

The utility distinguishes itself through deep integration with version control systems, allowing users to inspect repository status and historical file changes with visual markers displayed in the output margin. It employs heuristic-based language detection and syntax-tree parsing to ensure accurate formatting, while also providing a diagnostic mode that reveals hidden control characters and non-printable symbols to assist with data integrity and troubleshooting.

Beyond its primary viewing capabilities, the tool integrates into existing shell workflows to provide syntax-aware previews for search results, manual pages, and fuzzy finder navigation. It automatically manages terminal dimensions and pipe status to delegate long-form content to external system pagers or concatenate data for further command-line processing.

Features

  • Terminal Pagers - Facilitates interactive navigation of long-form text files by applying syntax highlighting and line numbering directly within the terminal.
  • Diff Viewers - Renders line-level changes from version control systems with syntax-aware colorization to simplify code review.
  • Terminal Rendering Engines - Processes raw text streams into structured, color-coded terminal output using ANSI formatting instructions.
  • Syntax Highlighters - Applies automatic color-coded formatting to plain text files to maximize visual clarity and code readability.
  • Infrastructure and Automation - Cat clone with syntax highlighting and Git integration.
  • Command Line Interface - Enhanced cat clone with syntax highlighting.
  • Command Line Interfaces - Enhanced cat clone with syntax highlighting.
  • Command Line Utilities - Displays file content with syntax highlighting.
  • File Management - A cat clone with syntax highlighting.
  • System Utilities - cat clone with syntax highlighting.
  • Text Processing and Search - File viewer with syntax highlighting and version control integration.
  • cat - Listed in the “cat” section of the Awesome Alternatives In Rust awesome list.
  • Status Integrations - Exposes Git repository modifications through visual status markers displayed in the file sidebar.
  • Output Pagers - Handles large text streams by automatically paging content and providing a scrollable, searchable interface.
  • Heuristic Language Detectors - Detects programming languages by analyzing file content and extensions to apply the correct syntax highlighting rules.
  • Command Line - Streamlines command-line workflows by replacing standard text output with a feature-rich, syntax-highlighted viewing experience.
  • Version Control Integration Tools - Integrates version control metadata directly into the file viewing process to highlight repository status and changes.
  • Terminal Output Formatters - Transforms plain text output into readable, colorized streams through automated formatting and syntax analysis.
  • Version Control History Viewers - Displays historical file versions with syntax-aware formatting to assist in tracking code evolution.
  • Manual Page Enhancers - Improves technical documentation readability by injecting syntax highlighting into standard manual page displays.

Star history

Star history chart for sharkdp/batStar history chart for sharkdp/bat

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 Bat

Similar open-source projects, ranked by how many features they share with Bat.
  • 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
  • junegunn/fzfjunegunn avatar

    junegunn/fzf

    81,017View on GitHub↗

    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

    Gobashclifish
    View on GitHub↗81,017
  • peltoche/lsdPeltoche avatar

    Peltoche/lsd

    16,074View on GitHub↗

    lsd is a directory listing tool and directory tree visualizer designed as a modern replacement for the standard Unix ls command. It provides a command line interface for listing directory contents and visualizing hierarchical folder structures with enhanced visual formatting. The utility distinguishes itself through customizable themes, allowing users to modify the output appearance by mapping specific colors and icons to file names, types, or extensions. It uses extension-based icon mapping to provide visual file type identification via specific glyphs. The tool covers functional domains in

    Rust
    View on GitHub↗16,074
  • ajeetdsouza/zoxideajeetdsouza avatar

    ajeetdsouza/zoxide

    37,467View on GitHub↗

    Zoxide is a terminal utility designed to accelerate filesystem navigation by learning user habits. It functions as a command-line navigation tool that allows users to jump to frequently accessed directories using partial names rather than typing out full file paths. The tool maintains a persistent, atomic file-based database that records navigation history, enabling rapid lookups and safe updates across multiple shell sessions. The project distinguishes itself through a frecency-based ranking algorithm, which calculates directory relevance by combining access frequency with temporal decay. Th

    Rustautojumpbashcli
    View on GitHub↗37,467
See all 30 alternatives to Bat→

Frequently asked questions

What does sharkdp/bat do?

This project is a command-line text viewer designed to enhance terminal output through automatic syntax highlighting and integrated file management. It functions as a replacement for standard system pagers, providing a readable interface for large text streams, source code, and markup files by applying color-coded formatting directly to the terminal output.

What are the main features of sharkdp/bat?

The main features of sharkdp/bat are: Terminal Pagers, Diff Viewers, Terminal Rendering Engines, Syntax Highlighters, Infrastructure and Automation, Command Line Interface, Command Line Interfaces, Command Line Utilities.

What are some open-source alternatives to sharkdp/bat?

Open-source alternatives to sharkdp/bat include: sharkdp/fd — This project is a high-performance command-line utility designed for rapid filesystem navigation and file discovery.… junegunn/fzf — This project is a general-purpose command-line filter that provides an interactive interface for processing standard… peltoche/lsd — lsd is a directory listing tool and directory tree visualizer designed as a modern replacement for the standard Unix… bootandy/dust — Dust is a command line disk usage analyzer written in Rust. It functions as a disk space visualization tool and… ajeetdsouza/zoxide — Zoxide is a terminal utility designed to accelerate filesystem navigation by learning user habits. It functions as a… eza-community/eza — Eza is a command-line utility designed to replace standard directory listing tools by providing a more informative and…