Channelflow is a direct numerical simulator for incompressible Navier-Stokes channel flow, written in C++. It simulates fluid flow in a rectangular box, with no-slip boundary conditions on the upper and lower surfaces of the box, and periodic boundary conditions in the stream and spanwise directions. Channelflow uses a spectral discretization in spatial directions (Fourier x Chebyshev x Fourier) and finite-differencing in time, on primitive variables (3D velocity and pressure).