I now have a Zig implementation of the Astar algorithm.
This is nothing fancy. I just wanted an implementation of this algorithm as part of an exploration I'm doing in Zig, and I didn't see an implementation around that I wanted to use. I wrote up something simple in a single file to drop into other projects if needed.
The most interesting thing about this code is that it avoids keeping track of any knowledge of the map type. Instead, when the algorithm needs to know something like which positions are adjacent, it asks the user. The user has to 'drive' the algorithm by calling its 'step' function, and then either passing requested information back into the next call to step to keep the process going, or receiving an answer.
If you are interested, the readme has an example of using the library.