Taichi depends on other open-source projects, which are shipped with taichi and users do not have to install manually: pybind11, fmt, Catch2, spdlog, stb_image, stb_image_write, stb_truetype, tinyobjloader, ffmpeg, miniz.
Halide has been a great reference for us to learn about the Apple Metal API and the LLVM NVPTX backend API.