Devlog #4: Untitled
Welcome back to the latest installment of my bi-weekly devlog, where I share updates on building my Expenses Tracker. This not only keeps my network informed but also helps me stay accountable and adds structure to solo-preneurship.
If you missed it, check out Devlog #3: Let’s talk about money, where I shared my journey towards financial literacy and my motivation for building this expenses tracker. Thank you all for your support and feedback — it’s been a huge motivator!
Special thanks to my girlfriend for her tireless support, and for putting up with the countless interruptions to give me feedback—sorry! I just get excited to show off the latest features of my app. ??
Another shoutout to Rainer Hahnekamp for answering all my questions over on Reddit about (integration) testing in Angular. I’m now looking into new testing strategies and alternative testing models such as the honeycomb and trophy testing models. as our conversation progressed started leaning away from the test pyramid mode and more ??
Rainer is also a trainer at Angular Architects and has a YouTube channel. Go check out his work!
As always, thanks Albert Starreveld for your support and guidance when it comes to all things auth, DB, backend and security and ?? Riccardo Bevilacqua for helping me polish the UI and UX to perfection ?
As the title suggests, this week there isn’t really a theme and just want to give you a few quick updates:
Navigation and sidebar
The app now has a nav- and sidebar, which links to all the pages of the app. It took tons of finetuning, but I’m proud to announce that these features now all work on desktop, tablet and mobile. This means the app can be used by a wide host of users, regardless of the device they are on.
Testing
With the introduction of navigation elements to my app, I also needed a new approach to writing automated tests. After some research and a fruitful conversation with Rainer, I added angular-testing-library to my toolkit to write integration tests.
I have to say, it’s a very powerful tool, but it requires a slightly different mindset (not to mention that setting it up was not as easy as I had hoped).
Integration testing also falls into this awkward space between end-to-end (E2E) testing and component testing, where I’m never quite sure what testing surfaces are available and which parts still need mocking.
However, I feel the new tests are delivering a ton of value—they cover a lot of functionality with minimal test code and require less work to set up compared to E2E tests. So, I’m definitely going to keep them and experiment further with this approach in the coming weeks.
Code Quality ????
As a solo developer adhering to best practices such as performing code reviews and automated quality checks are crucial to making sure the software stays bug free. Especially because I’m doing my own code reviews, I felt it was worth the time investment to add SonarQube to my workflow and I’m glad I can now keep track of
This means I get alerted to issues in my code-base before the code gets merged into the main branch.
If you’re interested in setting up static code analysis and if you want to read more on how I include quality gates in my workflow, I wrote an article about that here: Static code analysis (on a budget)
That's it for this installment and thanks for reading. I hope to see you in the next one for updates about my improved deployment process and I'll be focusing on some more infra related tasks, which will offer a nice change of pace to the frontend heavy work I've been doing for the past two weeks.
Oh, there's also another big update coming down the line, so stay tuned for some exciting news :)
See you in two weeks ??