Never expected it to be this hard
So the last days I was again changing the structure of my solution and trying to get on with it.
It took me a while to create one that Claude agrees with and is good for such open-source projects.
Anyways, this was the easy part. In my last devlog I said that I completed Custom Statuses & Custom Badges. Well… I did!
But then I found out, that my system was bad… and when I say bad I mean it wasn’t thought out. I found out about all of this when I finished the edit action for both. Originally I used Dictionary<string, TagDefinition>. Key was name of the Status/Badge and TagDefinition was the class of one of them which also has name property.
But Helyx was not prepared for this, so for the last days I redid the whole system eight times. Once I used Dictionary, once I used List, then HashSet, then Dictionary, then Dictionary with other types and so on.
I just couldn’t settle on the correct type for it. Until now, it took so long even though it is so primitive because it simply didn’t come to my mind and when I was asking Claude for suggestions of how could it be made, it didn’t think of using this type.
The final type is simply… Dictionary<Guid, TagDefinition> AND A LOT OF CHANGES.
Yeah… don’t worry guys! I am totally devastated by doing this over and over even though it was so simple & primitive to do. Well… maybe not really primitive because the changes were also difficult to do.
I mainly didn’t want to use the GUID system because I have Custom Statuses but also Built-in Statuses and I was really worried about Built-in statuses having GUID assigned to them.
Those sync options with GitHub are still in work, but I finished the GitHub Repository Stats viewer after a lot of experimenting with layouts and designs/effects/colors.
I’m looking forward to the next devlog guys! I hope Helyx will be your good coworker that will actually count for something hah!
P.S.:
I also made that text of colors is grammatically formatted. At least it should be…
Comments 0
No comments yet. Be the first!
Sign in to join the conversation.