https://github.com/mjansen4857/pathplanner
It is the general consensus that Path Weaver is preferred given that it is nicely integrated with WPILib.
A good path is not always a straight line from point A to point B. There are a lot of things to consider when designing a path!
For example:
It is critical to consider other robots on the field, field elements, as well as the overall spline your robot will be following. Sharp, jagged turns can cause the robot to tip over, become unstable, or inaccurate.
Smooth splines and paths are typically more consistent, safer, and accurate.
Note, that to use the Ramsete Controller, you may need to characterize your drive train. This process will help you tune your superstructure for smooth path following.


