Better Diff is a modular, extendable, and scalable framework in Java that provides functionality to find differences between 2 or more text files, and provides list of modifications (additions, deletions, transpositions, partial / full mutations) for each pair based on the full alignment.
API module provides API for all phases, fields, steps and other elements of the whole process. Any extension, clients or add-ons to the framework should always use this API.
Core module provides the core implementation for the API. It also provides extendable framework for Preparation phase and Pairing phase, and full implementation for Alignment phase and Identification phase.
Code module is not dependent on any other module within this framework.
Core implementation can be used in your client as it is, or extended with more functionality.
Modules are modules that extend Core module to some specific purpose. They always use API module, and sometimes they enhance or use implementation from Core module.
Utils module provides some utility classes.