awesome-repositories.com
Blog
MCP
awesome-repositories.com

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

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
jeffkaufman avatar

jeffkaufman/icdiff

0
View on GitHub↗
4,369 stars·181 forks·Python·13 viewswww.jefftk.com/icdiff↗

Icdiff

icdiff is a command line text analyzer and side-by-side diff tool. It serves as a visual comparison utility that identifies modifications between two text files and renders them in a colored two-column layout within the terminal.

The tool functions as a version control diff provider, allowing users to replace default difference engines with a side-by-side format. It utilizes ANSI color codes to highlight character-level changes, providing a visual method for terminal-based code review and text analysis.

The system handles difference computation through line-based analysis and dynamic column width calculation. It supports standard input stream processing, enabling integration with shell utility workflows and pipes.

Features

  • File Difference Renderers - Provides a visual dual-pane layout for displaying differences between two files.
  • Side-By-Side Diff Tools - Show differences between two files using a colored side-by-side view to quickly identify modifications.
  • ANSI Color Text Comparators - Provides a visual comparison tool that uses ANSI escape codes to highlight character-level changes within the terminal.
  • Character-Level Text Diffing - Computes precise textual differences at the character level to highlight specific edits within lines.
  • Command Line Text Analysis - Analyzes differences between text files directly in the terminal with improved visual formatting and character-level highlighting.
  • Command Line Text Analyzers - Identifies modifications between files using dynamic column width calculation and line-based comparison in the terminal.
  • Line-Based Differencing Algorithms - Identifies changed segments by comparing two text files line by line to generate a sequence of modifications.
  • Side-by-Side Diff Viewers - Renders code differences in a dual-pane, side-by-side terminal layout.
  • Version Control Diff Providers - Acts as a replacement for default difference engines to render file changes in a side-by-side format for VCS workflows.
  • Side-by-Side Text Comparison - Compares two text files in a two-column terminal layout with colored highlighting to quickly identify specific modifications.
  • Terminal Side-by-Side Layouts - Displays corresponding lines from two files side by side in the terminal using calculated padding and alignment.
  • Standard Input Stream Processing - Processes data from command line arguments or pipes to integrate with shell utility workflows.
  • Terminal-Based Code Review - Enables the review of source code changes directly within a terminal emulator using a side-by-side view.
  • Custom Diff Tool Integrations - Functions as a version control diff provider, allowing users to replace default difference engines with a side-by-side format.
  • ANSI Color Rendering - Implements ANSI terminal escape sequences to visually distinguish additions and deletions in a side-by-side view.
  • String Width Calculators - Calculates the visual length of strings to determine optimal terminal column widths for side-by-side display.
  • Version Control Diff Visualization - Visualizes file changes in version control systems using a side-by-side format instead of standard unified diff output.
  • Terminal Text Coloring - Applies colors to text within the terminal to distinguish between original and modified content.
  • Command Line Tools - Side-by-side diff tool for the terminal.
  • Terminal Utilities - Side-by-side diff viewer.

Star history

Star history chart for jeffkaufman/icdiffStar history chart for jeffkaufman/icdiff

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

Frequently asked questions

What does jeffkaufman/icdiff do?

icdiff is a command line text analyzer and side-by-side diff tool. It serves as a visual comparison utility that identifies modifications between two text files and renders them in a colored two-column layout within the terminal.

What are the main features of jeffkaufman/icdiff?

The main features of jeffkaufman/icdiff are: File Difference Renderers, Side-By-Side Diff Tools, ANSI Color Text Comparators, Character-Level Text Diffing, Command Line Text Analysis, Command Line Text Analyzers, Line-Based Differencing Algorithms, Side-by-Side Diff Viewers.

What are some open-source alternatives to jeffkaufman/icdiff?

Open-source alternatives to jeffkaufman/icdiff include: banga/git-split-diffs — Git-split-diffs is a command-line utility that renders version control changes as side-by-side, syntax-highlighted… gdamore/tcell — tcell is a Go terminal user interface library and framework for building cell-based applications. It functions as a… java-diff-utils/java-diff-utils — Java Diff Utils is a library for computing text differences, generating unified diffs, parsing patches, and applying… securingsincity/react-ace — react-ace is a React component wrapper for the Ace code editor, designed to embed feature-rich text editing and syntax… chrisbuilds/terminaltexteffects — This project is a terminal graphics library and command-line visual effects tool designed to create dynamic motion… rhysd/git-messenger.vim — git-messenger.vim is a plugin for the Vim and Neovim text editors that provides an integrated interface for viewing…

Open-source alternatives to Icdiff

Similar open-source projects, ranked by how many features they share with Icdiff.
  • banga/git-split-diffsbanga avatar

    banga/git-split-diffs

    2,737View on GitHub↗

    Git-split-diffs is a command-line utility that renders version control changes as side-by-side, syntax-highlighted diffs directly within the terminal. It functions as a visualization engine that processes raw output from version control systems to improve the readability of code changes during terminal-based reviews. The tool distinguishes itself through a responsive layout engine that automatically toggles between dual-pane and unified views based on the available terminal width. It incorporates a regex-based tokenization system to apply language-specific syntax highlighting and supports use

    TypeScriptdiffsdifftoolgit
    View on GitHub↗2,737
  • gdamore/tcellgdamore avatar

    gdamore/tcell

    5,076View on GitHub↗

    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

    Go
    View on GitHub↗5,076
  • java-diff-utils/java-diff-utilsjava-diff-utils avatar

    java-diff-utils/java-diff-utils

    1,536View on GitHub↗

    Java Diff Utils is a library for computing text differences, generating unified diffs, parsing patches, and applying changes to data in Java applications. It functions as a utility for comparing text sequences, calculating additions and deletions, and generating structured difference comparisons, while also acting as a patch generation library for creating, parsing, and applying standard unified patches to synchronize and update text content. The library calculates the shortest edit script between two sequences using dynamic programming to identify optimal additions, deletions, and modificati

    Javacomputing-diffsdiffdiff-algorithm
    View on GitHub↗1,536
  • securingsincity/react-acesecuringsincity avatar

    securingsincity/react-ace

    4,204View on GitHub↗

    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

    TypeScriptacecode-editorhacktoberfest
    View on GitHub↗4,204
  • See all 30 alternatives to Icdiff→