beat is a binary delta patcher. That is, it encodes the differences between an old and new file, and produces a patch file that can be distributed to transform an old file into a new file. Almost always, these patch files are significantly smaller than distributing the entire new file. Patches also allow you to only distribute your own modifications to an existing file, without having to distribute data which is potentially not your property.

As a binary patcher, it works on any file type. As a delta patcher, it can detect inserted and deleted data, producing much smaller patches than linear patchers such as IPS.

beat also aims for simplicity: it is possible to write a beat patcher in under twenty lines of code. Something which cannot be said for other popular delta patchers such as Xdelta and bsdiff. However, this simplicity does come at a cost: beat patches tend to be around 5% larger than equivalent Xdelta -9 patches.


beat is available under the ISC license.


beat v03