  We present PYATB, a Python package designed for computing band structures and
related properties of materials using the ab initio tight-binding Hamiltonian.
The Hamiltonian is directly obtained after conducting self-consistent
calculations with first-principles packages using numerical atomic orbital
(NAO) bases, such as ABACUS. The package comprises three modules: Bands,
Geometric, and Optical. In the Bands module, one can calculate essential
properties of band structures, including the partial density of states (PDOS),
fat bands, Fermi surfaces, and Weyl/Dirac points. The band unfolding method is
utilized to obtain the energy band spectra of a supercell by projecting the
electronic structure of the supercell onto the Brillouin zone of the primitive
cell. With the Geometric module, one can compute the Berry phase and Berry
curvature-related quantities, such as electric polarization, Wilson loops,
Chern numbers, and anomalous Hall conductivities. The Optical module offers a
range of optical property calculations, including optical conductivity and
nonlinear optical responses, such as shift current and Berry curvature dipole.
