Cheezy World

Delivering software with discipline and joy

Building a LiveView app using AI - Part 12

Adding users to boards and tasks

Since the announcement of Claude Code running inside of Tidewave I have been extremely happy about this combo. For now I am using it for nearly all of my changes to the codebase. I have even given it a name - ClaudeWave. All of the changes in this post were done using ClaudeWave.

So far our boards only have an owner. I want an owner to have the ability to add other users to a board and also assign tasks to one of those users. Let’s get started.


Building a LiveView app using AI - Part 11

Tasked with improving Tasks

The final phase of our plan is focused on visual cleanup and better error handling. Before I focused on the visual cleanup I wanted to fill in some of the gaps that exist in our plan. I’m starting with Tasks. There are several missing features that I wanted to add to Tasks to make them more useful. This post includes those changes.

Rounding out Tasks

At this time Tasks only have a title, description, and their position in the column. This really is not enough for a serious Kanban application. I asked Claude to add the following fields:


Building a LiveView app using AI - Part 10

Adding Drag and Drop

We asked Claude to finish phase six which was adding drag and drop functionality to the board. Claude did this quickly but when I tested it I found that it was more complex that expected. Claude got a few things wrong. First of all let’s watch the video of phase six.

Always test everything

At the end of the video it seems like everything was okay. One might be tempted to commit the code and move on. I think a very important step is to test everything that AI creates. Occasionally AI will make a mistake and it is important to catch it right away while it still has the entire context available.


Building a LiveView app using AI - Part 9

Doing a little cleanup

This post is a cleanup post. After Part 8 I spent some time testing all aspects of the application and decided to make a few small changes beofre moving to the next phase. I noticed that flash messages (the message that shows in the upper right corner) stays there until I dismiss it. I think it becomes anoying to have to do that repeatedly when adding multiple tasks so I decide to make it automatically fade away after 5 seconds. I could ask Claude to do this but thought it was a very easy task so I set about to do it myself. Here is what I came up with.


Upgrade Elixir and Fly.io to use Elixir 1.19

Elixir finally reached version 1.19.2 so I feel the 1.19 is stable enough to give it a try. This short blog post is about my process to update Elixir and to also update my Fly.io deployment to the latest version of elixir and OTP.

Update the application

To begin with I needed to get the latest elixir and otp version. That was easy with asdf and so I installed elixir 1.19.2-otp-28 and erlang 28.1.1. These are the latest versions at the time of this writing. To ensure I always use these version I updated my .tool-versions file in the root of my project: