30 open-source projects similar to jeffkaufman/icdiff, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Icdiff alternative.
tcell is a Go terminal user interface library and framework for building cell-based applications. It functions as a terminal emulator backend and input processor, utilizing a change-based diffing engine to manage screen state and efficiently render updates. The project is distinguished by its pluggable backend abstraction, which allows terminal interfaces to be rendered across physical terminals or compiled into WebAssembly for web browser display. It provides a virtual screen simulation to enable programmatic event injection and output inspection for automated application testing. Its capab
react-ace is a React component wrapper for the Ace code editor, designed to embed feature-rich text editing and syntax highlighting into web applications. It provides a browser-based editor that applies language-specific coloring and formatting rules to source code and markup files. The project distinguishes itself through support for specialized keyboard interaction modes, including Vim and Emacs, as well as a side-by-side diff viewer for comparing different file versions. It also functions as a tool for code snippets and live autocompletions to accelerate text entry. The component covers a
This project is a terminal graphics library and command-line visual effects tool designed to create dynamic motion graphics using ANSI escape sequences. It provides a framework for implementing an ANSI text animation engine and a motion processor that handles the movement of characters along paths within a shell environment. The tool is distinguished by its wide array of pre-defined visual effects, ranging from simulated environmental phenomena like thunderstorms and fire to high-tech reveals such as laser etching and decryption animations. It also supports extensibility through a plugin-base
This is an ANSI terminal color library and console output manager used for applying colors and text attributes to command line interface output. It functions as a terminal text styler and RGB color formatter, generating the escape codes necessary for foreground and background styling. The project supports 24-bit high-color RGB mapping for precise color rendering in compatible terminal emulators. It enables the creation of colorized text fragments that can be embedded into larger blocks of text or applied as global styles that persist across subsequent output streams. The library covers broad
Awesome Print is a Ruby pretty printer and object inspector designed to visualize data structures through indentation and ANSI colors. It serves as a formatter for interactive shells and a utility for analyzing internal object states. The project features a plugin system for defining custom formatting rules for specific object types and supports global preference loading via a configuration file in the home directory. It can return formatted ASCII strings instead of printing directly to the console. Capabilities extend to rendering formatted object structures within web templates and writing
lolcat is a command line text processor and color filter that transforms standard text streams into rainbow gradients. It functions as a terminal text colorizer that modifies the visual presentation of shell output using ANSI escape codes. The tool processes text passed through Unix pipes to apply rainbow gradients and color highlights. It uses these visual effects to customize terminal output and differentiate blocks of text within a command line interface.
Tablewriter is a Go library and tool for generating ASCII and Unicode tables from structured data. It functions as a multi-format table renderer, converting data into layouts for terminal output, Markdown, HTML, and SVG. The project distinguishes itself through the ability to embed nested tables within cells and merge adjacent cells horizontally or vertically. It also supports ANSI color application for headers, rows, and borders to style terminal user interfaces. The toolkit provides capabilities for mapping Go structs and slices into rows, loading and converting CSV files via a command-lin
pterm is a Go terminal UI library used to build rich command-line interfaces. It provides toolsets for terminal data visualization, operation progress tracking, interactive user input, and structured logging. The library distinguishes itself through a comprehensive set of visual tools, including a framework for interactive terminal prompts such as selection menus and confirmation dialogs, and a specialized system for rendering bar charts, heatmaps, and tree structures. It also includes a structured terminal logger capable of producing leveled, colorful system messages. The project covers bro
PHP-Console-Highlighter is a syntax highlighter and console code formatter designed to apply color-coding to PHP source code for display in terminal environments. It functions as a utility to transform plain PHP text into visually structured code for command line interfaces. The tool enables terminal-based code review and provides formatted output for PHP static analysis tools and command line applications. It uses regex-based tokenization and ANSI sequence color mapping to translate syntax tokens into colored text.
This project is a framework for composing terminal interfaces through declarative styling and a grid-based layout engine. It provides a comprehensive toolkit for building responsive command-line applications by managing ANSI escape sequences, color profiles, and text rendering to ensure consistent visual output across different terminal environments. The library distinguishes itself through its ability to automatically detect terminal capabilities and background themes, allowing it to adjust color schemes and downsample profiles for optimal readability. It utilizes a layered composition model
This tool is a rule-based engine designed to automate the correction of failed terminal commands. By integrating directly into the shell environment, it intercepts command execution errors, analyzes exit codes and output streams, and applies corrective logic to resolve typos or syntax mistakes. It functions as a persistent background utility that monitors command history to provide immediate remediation for input failures. The system distinguishes itself through a modular, plugin-oriented architecture that allows for extensive customization. Users can define their own correction rules via scr
HTTPie is a command-line HTTP client and REST API debugger used for sending requests to web services. It functions as a network tool for managing headers, authentication sessions, and file uploads, with a specific focus on the transmission and reception of JSON data. The tool utilizes a custom parsing layer to translate simplified command-line input into structured HTTP parameters. It provides ANSI-based terminal formatting to apply color and structural indentation to raw responses, improving human readability for web debugging. The project covers request construction and previewing, multipa
htop is a terminal user interface system monitor for Unix systems. It functions as an interactive process viewer and real-time resource visualizer, providing a dashboard to track CPU, memory, and load average metrics. The tool enables the sorting, filtering, and termination of active system processes and threads. It distinguishes itself through a text-mode interface that can render processes in a hierarchical tree structure to visualize parent-child relationships and allows for the assignment of CPU affinity to specific processor cores. The monitoring surface covers CPU utilization, memory a
🔍 Go tool for LSB steganography, capable of hiding any file within an image.
ANSI escape codes in pure bash - change text color, position the cursor, much more
The Windows Package Manager is a command line tool for discovering, installing, upgrading, and configuring software packages on Windows operating systems. It functions as a CLI software installer for automating the deployment and update of applications across individual or machine-wide user profiles. The project extends its functionality through a component object model interface for integration into other Windows applications and a set of native cmdlets that allow system administrators to manage software installation via PowerShell scripts. The tool covers a broad range of package lifecycle
.. image:: http://img.shields.io/pypi/v/cppman.svg?style=flat :target: https://pypi.python.org/pypi/cppman .. image:: https://img.shields.io/github/downloads/aitjcize/cppman/total.svg :target: https://pypi.python.org/pypi/cppman#downloads
loc is a tool for counting lines of code. It's a rust implementation of cloc, but it's more than 100x faster. There's another rust code counting tool called tokei, loc is ~2-10x faster than tokei, depending on how many files are being counted.
Bashtop is a terminal-based system monitor and resource dashboard for Unix systems, including Linux, macOS, and FreeBSD. It provides a text-user interface for tracking real-time hardware performance and managing system processes. The tool functions as a hardware dashboard that visualizes processor, memory, disk, and network usage. It includes process management capabilities that allow users to filter, sort, and terminate active system tasks directly from the command line. Users can customize the visual appearance and behavior of the monitor through integrated menus or local configuration fil
version](https://img.shields.io/pypi/v/dtrx.svg?style=for-the-badge&logo=PyPi&logoColor=white)](https://pypi.org/project/dtrx/) pyversions](https://img.shields.io/pypi/pyversions/dtrx.svg?style=for-the-badge&logo=python&logoColor=white&color=ff69b4)](https://pypi.python.org/pypi/dtrx/)
Transfer.sh is a self-hosted file storage server designed for rapid data sharing through a command-line interface. It functions as an encrypted hosting platform that allows users to upload and download files using standard HTTP requests, facilitating direct data transfer between systems without the need for external accounts or complex configurations. The service distinguishes itself by processing data as continuous streams, which minimizes memory usage during large transfers. It provides granular control over file availability through automated lifecycle management, allowing administrators t
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
The easy way to switch between your projects on ZSH
Alex is an inclusive language linter and content auditor designed to detect and flag insensitive, inconsiderate, or gendered phrasing. It serves as a profanity detection tool that identifies offensive words based on configurable certainty ratings to ensure professional and neutral content. The tool distinguishes itself through diff-aware analysis, allowing it to function as a continuous integration validator. By analyzing pull request deltas, it can flag new insensitive phrasing while ignoring existing legacy issues to prevent old warnings from blocking new merges. The project supports multi
This project is a keyboard-driven terminal file manager designed for efficient navigation and manipulation of local and remote filesystems. It functions as both a standalone console file explorer and a versatile file picker, allowing users to select paths and pass them to external shell commands or system utilities for automated workflows. The application distinguishes itself through a highly modular architecture that supports compile-time feature flagging and static binary compilation, ensuring a minimal memory footprint and portability across environments. Users can extend its core function