Bundles
A bundle is a data structure representing a group of transactions. Any number of layer 2 data transactions can be compressed and included in a single bundle layer 1 transaction.
Why bundles?
Bundles allow for infinite transaction scaling - allowing up to 2^256 transactions to be stored in a single bundle. As bundle sizes increase, Arweave's transaction capacity can increase linearly - i.e. using 1 million item bundles allow for a 1,000,000x increase in layer 1 transaction capacity.
The bundle spec, designed by Bundlr, is open-sourced and is currently implemented in JavaScript, Go, and Rust.
To learn more, please refer to the spec documents.