I agree with others here, re: “Tab” … this is a grid.
Some improvements that would be cool to see:
* keyboard shortcuts (up, down, left, right & esc to exit)
* the arrows behave differently when using the up & down vs left & right, up & down repeats grid items in the same column while left & right seem to shift to the previous or next row depending on where you are
* there’s a lot of JS on the page (it’s not just toggling classNames), maybe using CSS Grid or Flex could reduce some of that
* the HTML could probably be more semantic, less div elements, and maybe an actual list (ul or ol element), which could help make use of arrows more consistent