BLOOM3 is an unstructured boundary-layer (BL) generation code. For boundary-layer (BL) generation it uses an Advancing-Normal Boundary-Layer procedure to generate a tetrahedral, pentahedral, and/or hexahedral BL mesh adjacent to BL generating surfaces. For a complete volume mesh, it uses either an open or closed method. For a closed method the primary input is an unstructured tetrahedral element volume mesh and can be coupled with an external procedure for displacing the volume mesh and inserting the BL region mesh. In open mode the primary input is a surface triangulation. BLOOM3 has an internal BL interference checking process and is coupled with both AFLR3 and TetGen for complete volume mesh generation. It is available as a stand-alone executable or a suite of libraries for BLOOM3 integration within other systems.