traverse has many transitive dependencies, is CommonJS-only and is projected to get bigger over time.
neotraverse is a fork and TypeScript rewrite of traverse with 0 dependencies, major improvements, works in the browser and will be 0-dependencies forever.