If you don't want to read, here's the link: https://github.com/IRefactoredThat/MCalc. The app can be added on Obtainium as well on the repository. The license for the project is MIT, also check the repo.
Hi everyone, I wanted to share a project I started working on (or better to say continued after a long time) 3 - 4 months ago and am happy with its current state to make the first prerelease called MCalc.
Originally, I had it named MaterialCalc but had it renamed since that was too long. As the name might suggest, my primary inspiration for making this app was Google's material design which I discovered after becoming more privacy conscious and moving to LineageOS. I won't go into detail unless you want me to?
So why not make an app in kotlin and instead in c#? You see, I started making the app back in high school last year (which is why I said continued at the start of post) which served a different purpose - the final project we had.
I do like c# so I decided to stick with MAUI, which, yeah, is a cross platform framework but I decided to stick with it (despite some bugs) and eventually made code android only since I think the approach they have (with the handlers) is good.
As for the github, you might see that all commits happened at the same time and that also deserves an explanation. You see, back when I started the project and all up until this first release I didn't commit myself to learning git.
So I worked on code in rider, tested in an emulator and just rince-and-repeat. But since I plan to maintain this project properly I decided to start learning it properly. That's why the first two commits are so big.
I should also be transparent about AI usage.
I typically let AI write some code as a suggestion. Its sometimes hard to add a new features without some prototype, its easy to miss something or simply not take certain things into consideration and they come and bite you later, which happened to me a lot. That's why AI is nice, since it can easily analyze those cases or in the very least tell me about them.
When I see the code AI wrote, then I try to identify whether it should work. If so, then I let AI add that to my codebase, then I run it and test it. If it works great, I make it match my code's architecture, check if something should be written differently to match my architecture and preferences and move on. If not I do some search online, check intellisense suggestions in case there's a better method/property etc.
Also I used it to generate commit title and messages since it basically writes the things I wanted to say in the commit but I review it anyway.
Other then that I write the code myself. I would be glad to explain the code architecture and why I made the decisions the code shows.
If there's anything I missed to say or you are curious, then please do ask in the comments. I tried to keep things brief and explain every that I think might be important to you.
There are probably some minor bugs and unexplained features/behaviors in the app which I will further work on to make more self explanatory.
Thank you for reading this far! I feel like I opened up my soul.