Iβm in the last 20% of my #AdventOfProgress project for a public release, but I started a new project over the weekend. Now Iβm here in the last 20% and got distracted with an old project. π
Today something out of my control distracted me. And while I get distracted, I get more ideas to distract myself even more from other stuff.
Getting distracted from distractions is distracting. π«
Last weekend (when I prepared that post), I created a game for my oldest with Claude Code. After breakfast we discussed games he could play on his tablet. I thought that Sudoku would be a nice game for him, but maybe with images or shapes.
Itβs already a bit late, and I've been sitting on this for a while now. No idea why, but here it is. π
Every New Year's resolution I had over the past years never worked out. So I stopped having them and thought about something manageable I could achieve. Which was also not working out because every time I try to work on a side project with a deadline, something occurs and moves my attention.
To everyone who reads this, a happy new year 2026! π
I left 2025 satisfied and happy among my loved ones. We gathered at my home with some friends and their kids. It was a nice evening. While waking up, I started to write these words. I initially planned to write them before leaving 2025. But this time I will publish my review. For 2024, Iβve started the post but never finished it.
Summary Day! π Overall, Iβm happy with how all this went. After 24 days, I have more than just an MVP! It is working nicely and makes everything I had in mind when I started.
The whole process went really smoothly. The last time I worked with React Native was ~10 years ago. At that time, I played around with an Android app, which I still want to build someday. :)
I've installed the app on a real device and tested everything. Most of the bugs I've found were keyboard related. If I had enabled the keyboard on the simulator, maybe there would have been fewer bugs. Or, should I call them bugs? When the keyboard is enabled, I just can see some inputs or buttons. I'm so happy that I did not find any critical bugs.
Aaaand the last MVP feature is implemented. Today I've added a photo upload for each entry. The user can add 5 images to each entry and can choose one main photo, which is then displayed on the entry list. And the user can remove the images as well.
This gives the app a nice personal touch. I hope that I don't reach any limits soon with this in Supabase. I never used the file storage before. It's a bit exciting; there are a lot of first times in this project. π
For this day, I wanted to implement swipe gestures to edit or delete a list entry. More complex than initially thought but doable within this day.
There were 3 packages to install: a gesture handle, an animation lib, and expo-haptics. After creating a swipeable row, I needed to implement the actions for edit and delete some hooks and was mostly done. After writing this all down, it sounds less complex than it felt when I implemented it. π
While testing the app, I saw a caching bug after switching users. User2 saw the data of User1 after a sign-out and new sign-in because the cache was not cleared on user change.
I thought the task for this day would be easier. But using a username for sign-in is quite challenging to implement with Supabase. :/
Now I have a new table for profiles, besides the auth table Supabase provides. Because Supabase Auth can't handle sign-in with a username, I now also have an edge function running. Which I never used before. It works, so I don't complain. :)
Maybe this is something you normally don't need for an MVP, but I was tired of typing an email for the sign-in. So, for me, it needs to be in the MVP.
When I was done, I staged my changes, and I noticed that I accidentally committed my .env file. So I used git-filter-repo to remove the env file from git history. What I did not know was it removed all my staged changes without a warning. π± That was a shock. A big one. After some minutes walking through the house, I calmed down and sat back on the chair. I was able to rescue around 85% of the files. The rest I could reproduce somehow.
WHAT an evening! I'm back on track and happy the accident was not that bad.
On Day 19, I made some updates so that the app feels more like an app inside the device.
It got a proper app icon and a splash screen that work in light and dark mode. Currently I focus more on a good integration with iOS; Android is coming later.
I also added a date picker. Before it was basic string insertion into the date field, which is not a good UX.