The Hybrid Automata Library (HAL) is a Java Library made of simple, efficient, generic components that can be used to model complex spatial systems. HAL's components can broadly be classified into: on- and off-lattice agent containers, finite difference diffusion fields, a Gui building system, and additional tools and utilities for computation and data collection. These components are designed to operate independently and are standardized to make them easy to interface with one another. As a demonstration of how modeling can be simplified using our approach, we have included a complete example of a hybrid model (a spatial model with interacting agent-based and PDE components, commonly used for oncology modeling). HAL is a useful asset for researchers who wish to build efficient 1D, 2D and 3D hybrid models in Java, while not starting entirely from scratch. It is available on github at https://github.com/torococo/HAL under the MIT License. HAL requires at least Java 8 or later to run, and the java jdk version 1.8 or later to compile the source code.