Member-only story
Part 5: Implementing a Web UI using Vaadin and GitHub Copilot Agent Mode
Why LLMs are not suitable for lesser-known programming languages and frameworks
Continuing my journey of using AI-integrated IDEs to develop Java applications, this time, I turned to a lesser-known framework for developing web UI using Java called Vaadin Flow. The previous time, I had a good experience using Windsurf and Claude 3.5 Sonnet to implement a REST service with a cache layer using Spring Boot:
In this article, as I promised in my previous article about GitHub Copilot's new Agent Mode, I will use VS Code with Copilot’s Agent Mode and Claude 3.5 Sonnet to implement a Web UI using Vaadin Flow for my Spring AI tutorial sample project (Employee Assistance Chatbot). I will provide all the steps and prompts I used to see the GitHub Copilot Agent Mode in practice and compare it with Windsurf’s Cascade agent. My other goal is to see if LLMs can help me implement a UI using a lesser-known Java framework. The final note is that, Unlike my previous attempt, I don’t know much about Vaadin Flow.

· What do we want to implement using GitHub Copilot Agent Mode?
∘ What is Vaadin Flow?
∘ What is GitHub Copilot Agent Mode?
· Let’s start coding!
∘ 1️⃣ First prompt: implement the Web UI using Vaadin Flow!
∘ 2️⃣ Second prompt: Exclude the generated Vaadin files
∘ 3️⃣ Third prompt: Add chatbot response time to UI
∘ 4️⃣ Forth prompt: Improve the Web UI layout
∘ 5️⃣ Fifth prompt: Make the question answer asynchronous
∘ GitHub Copilot Free Plan
· Final Thoughts
What do we want to implement using GitHub Copilot Agent Mode?
I wrote a series of articles in the form of a tutorial about Spring AI and implementing an Employee Assistance Chatbot using the RAG technique: