Based on the duality between topological string theory on Calabi-Yau threefolds and Chern-Simons theory on three manifolds, Mina Aganagic, Albrecht Klemm, Marcos Marino, and Cumrun Vafa proposed "the topological vertex", an algorithm on effectively computing Gromov-Witten invariants of any toric Calabi-Yau threefold in all genera. I will describe a mathematical theory of the topological vertex based on a joint work with Jun Li, Kefeng Liu, and Jian Zhou.