This document describes BioJS, a library of JavaScript components for representing biological data. It is not a framework but a collection of reusable graphical components that follow a common specification. The components make it easy to develop, maintain, use, test, combine, discover, and extend biological data visualizations across different JavaScript libraries and platforms. The specification defines component architecture, communication, extension, documentation, and examples to unify representation of biological information.