The focus today was to add UI for adding, editing, and deleting entries. Which is now working but looks awful, but for an MVP it is enough. :D
While working on it, I discovered some flaws in how I handle entries. When I had this app in mind, I always thought that this should be possible from one form input. But while thinking longer on it, this would be possible but with a lot of effort. So this could be a feature for later. For now I want to focus on the basics. Still, I don't want the user to fill out a lot of form inputs.
With this day, I have some input fields that are simple but are doing the job. It is now possible to make simple CRUD operations within the app.
I noticed that I forgot to add ESLint, Prettier, and proper typechecking on project init.
So I've added it and also run into an issue in my Neovim config. Where I was unable to use some LSP methods. The solution was that I tried to use a tool that was not installed, and after the typescript-tools migration for Neovim v0.11, this tool initialization was failing silently and causing some problems. Strange that this is only recently an issue. But ok, I found a fix, and now my Neovim is back working again with TypeScript. :)
After adding ESLint, Prettier, and proper typechecking with my now working Neovim, I resolved some issues, and the project is now “clean.”
Creating Database and Tables! This one is a bit “harder” because I have to plan the data model correctly. For the auth, I can reuse the Supabase auth tables, so the focus will be on the tables.
For the application I need 3 tables and a many-to-many table. For now this is enough to get the app going.
After creating the tables in the Supabase UI, I used the Supabase CLI to generate the types and applied them. Additionally, I added some API functions to be more prepared for the next day.
Day 2 of #AdventOfProgress has translations as the main topic. I want the app to support at least German and English.
Because I'm already quite familiar with next-intl, I've chosen react-i18next as the internationalization tool for this app. Which worked quite nicely. And the API looks quite similar to next-intl.
Not much to say here. I've spent around 1 hr implementing this. A big chunk of the time was wasted on a dynamic import, where I tried, out of muscle memory, to dynamically load the JSON files with the translations. Implementing dynamic loading of languages has, at this state of the app, no real impact. So I ditched dynamic loading in favor of statically loading the 2 languages.
Today I have planned out the frame of the application. The tech stack will be Expo.dev (React Native) and Supabase. This stack is what I had in mind for most of the time. First, I also wanted to add NativeWind for styling, but for now I want to start as clean as possible and focus on what is really needed to get out an MVP.
I like the idea of Advent of Code/TS, but last year, I saw that this consumed a lot of my time. Yes, it was fun, but it did not push my side projects further.
Currently I thought I will have more time to write. But it looks like, that my brain is so occupied with stuff that each day I forget to write a post the previous day.
I forgot to count but it is the thirdfourth fifth attempt to write the post. 🙈 Hell, I also forget to pay some bills or answer some letters which are important.
I don’t know what’s happening at the moment. I’m focused on a topic but I’m so lost on other important ones and forget about them constantly.
Yesterday I had a strange day. Something between “When can I go to bed and leave this day behind?” and “I have so much energy, I don’t know which task I should tackle first.”
The day started with my usual dentist appointment, where I needed to drive 1 hr there and 1 hr back. Sit there for around 1 hr and be done. It’s ok but annoying that I lose plenty of time.
Back at home, I started some long client meetings. Usual Sprint refinements and plannings.
But later that day, I had an interview for a new client project, which turned out quite good. I was surprised how much energy it brought. I felt so good and energized, which I thought I’d lost this feeling in the past weeks. 🙈
I was able to keep this energy up to the evening, where I had a debugging session with a colleague, and we fixed a nasty bug, which we both thought was unfixable. 😅
After all this, I got to bed with a good feeling and the attitude to crush it today. And I’m still pumped to get a lot done today. The only blocker is that I have so many ideas, I need to write them down, AND I don’t know where to start. 🙃