In this lesson, we improve the user experience of our Vibe application by adding a progress spinner that displays while the LLM generates commit messages. Currently, the application appears to hang with no feedback during message generation, which can be confusing for users. We integrate the `briandowns/spinner` package, which offers more features than the basic spinners we've built earlier in the course, including various animation styles and color support.
We implement the spinner with character set 14 (animated dots), add a suffix message "generating commit message" to clarify what's happening, and apply cyan coloring to improve visibility. The spinner starts before calling the LLM and stops once the message is generated, giving users clear visual feedback that the application is working. We test this by dogfooding our own tool—using `vibe commit` to commit these very changes, demonstrating how the improved UX makes the tool feel more polished and production-ready.