Skip to main content

· 5 min read
beansquared

Helloooooooooooo party people! As it's been a quite awhile since my last update, I figured another one was long overdue at this point. So what have I been up to?

Well, I'm still chugging away at the revamped Modrunner website, bringing it up to my personal standard and such. It's admittedly taken much longer than I would've liked, due to a combination of factors. Primarily of which is that I at one point pretty much scrapped all the work I had done up until that point so I could switch the tech stack I was using. Now this might sound rather counterproductive, and this is true, to a certain extent, but let me justify myself.

The current website has historically served as documentation for the bot, which it has done perfectly well. The current website uses a tool called Docusaurus, which is a framework for creating simple documentation-centric websites. However, since I want the website to be able to do more, like providing an online dashboard for managing the bot, this simplicity just isn't going to cut it for me. While Docusaurus does technically allow you to create pages with custom logic, which is one possible way I could approach building the dashboard, it's not really intended to be used that way and I don't particularly want to spend my time fighting with my tools.

So instead, I've elected to switch to a framework called Nuxt, used for creating full-stack web applications. In a nutshell, that means that it's a tool that contains all the bells and whistles I need to build the things that I want, and doesn't shoehorn me into a particular way of doing things. Rest assured that haven't thrown out all the work I've done so far. Nuxt still uses Vue to construct the user interface so I can still reuse a lot of the old code to save time and effort.

But back to why I scrapped a lot of my existing work - this is also a part of unifying various pieces of Modrunner together. Originally, the plan for the dashboard was that it was going to be its own separate website, which you could access using a link on the documentation. This would've gotten the job done, but I eventually decided that I wanted a cleaner and more cohesive experience, so instead I decided to rebuild a lot of the current website's functionality in Nuxt, so that the dashboard could be integrated better with the rest of the website.

The last part is about future-proofing. Thinking back to the original plan of having the dashboard nested within the current documentation website, doing this way means more work for me down the line. Updating something like Modrunner's styling would be a lot more work since it means I have to update two separate projects at the same time and be careful that I keep them in sync. Same goes for adding new functionality, I would need to update information in multiple places at once which leads to complication and complexity that I can eliminate by just having these two things, the dashboard and documentation, in one place.

So that's what's been happening in the world of Modrunner as of late. I believe that I can share a few new pieces and teasers of information about the new website itself, now that I have a fairly substational portion of it completed. The new website, once it leaves its initial beta period, will completely replace the current website in its entirely. I will likely keep the current website around for a little while just in case, but in time it will go away for good, so if you're particularly emotionally attached to it for whatever reason, I recommend you prepare yourself. However, don't worry! All the documentation that the current website hosts will be present in the new website. In fact, here's an image of what a document page currently looks like:

The homepage has also recieved a fresh coat of paint, although please ignore the giant placeholder image at the bottom (lol):

And lastly, the most important part, the dashboard has had most of its most subsantial work completed and is in a mostly working state. Most of the work that is left involve more mundane but nessessary stuff like tweaks to the styling and error handling. Here's an example of how looks now:

I appreciate that support that everyone has shown me in the recent months in terms of patience and reporting issues. Great software is always a group effort, so thank you. You help make Modrunner as great as it is as much as I do. We can celebrate a couple smaller milestones together as well, Modrunner recently surpassed being present in over 100 unique Discord servers! That also means that I was able to make Modrunner a verified Discord bot, so now it looks all official and stuff! Yay!

Once again, thanks and I appreciate the patience. Good things are coming!

-beansquared

· 6 min read
beansquared

Introduction

Hey everyone,

Seems like this concept of an end of the year recap has been gaining popularity in recent years, with the most notable example being Spotify Wrapped, and recently with other services like Steam Replay. I even got one from Jimmy John's today! So I thought it might be kinda neat if I made something similar for Modrunner this year. This project has personally had my time and attention more than most anything else this year, and it's been very rewarding for me. So thank you for using Modrunner, I'm glad so many find my work useful.

Timeline of Events

A lot has happened since Modrunner was initially released in June of this year. Originally launched with the name Modrinth Bot, Modrunner initially only supported searching for projects on Modrinth, and did not have any sort of update tracking functionality. Over many updates using community feedback, Modrunner has grown into a mature project with hundreds of projects tracked for updates across both CurseForge and Modrinth, in many servers of various shapes and sizes. Let's take a quick look at the timeline for major improvements made to Modrunner this year:

June

  • Initial release of Modrunner, under the name of "Modrinth Bot"
  • Addition of the ability to track updates to projects
  • Addition of support for CurseForge projects

July

  • Addition of buttons on update notifications that link to the new project version on its respective website
  • Addition of notification styles, with Normal and Compact mode offered as options
  • Addition of changelogs in update notifications

August

  • Improvements to update checking, making Modrunner detect them much faster
  • Addition of allowance to track a project in multiple channels at once
  • Improvements to the /list command, changing it to use embeds rather than a big block of text
  • Migration from hard-coded permissions to Discord's built-in permission system
  • Many subsequent bug fixes, notably missing notifications for CurseForge projects (this one is still a reason why I don't sleep at night)

November

  • Addition of project ID and channel parameters to the /untrack command, for better management of tracked projects
  • Addition of channel parameter to the /list command and change of listing projects in alphabetical order
  • Addition of new setting to limit the max length of display changelogs in update notifications

December

  • Addition of the ability to add roles to be notified when an update notification is sent
  • Addition of support for update notifications in Discord's forum channels

Something that I constantly worry about as a developer is thinking that I'm never doing enough, that I'm working too slowly or not efficiently enough on something. Looking back on this timeline, and considering everything during this period (finishing up my final semester of college), I think that the amount I've accomplished with Modrunner is something to be satisfied with, and I'm looking forward to adding even more improvements in the future!

Tracked Project Statistics

Now, how about some statistics? Big numbers? New records? Everyone loves those, right?

As of this blog post's posted date, the project that has been tracked in the greatest amount of times is the Modrinth version of Sodium, a modern rendering engine and client-side optimization mod for Minecraft, which has been tracked in 8 different Discord servers, which is over 25.8% of the servers that Modrunner is present in!

The second-most tracked project is the Modrinth version of Fabric API, a lightweight and modular API providing common hooks and intercompatibility measures utilized by mods using the Fabric toolchain, which has been tracked in 6 unique servers, or 19.35% of the total servers Modrunner serves in.

Here's the top ten tracked projects, as ordered by the number of different servers it's tracked in. For projects with the same number of servers tracked in, they are ordered by total downloads. All the listed projects are for their Modrinth versions; guess Modrunner is a popular choice for those working closely with the Modrinth community!

Project NameProject AuthorServers Tracked InPercentage of Servers Tracked In
1. Sodiumjellysquid3825.8%
2. Fabric APImodmuss50619.35%
3. Lithiumjellysquid339.68%
4. Iris Shaderscoderbot39.68%
5. Indiumcomp50039.68%
6. Sodium ExtraFlashyReese39.68%
7. Reese's Sodium OptionsFlashyReese39.68%
8. Debugifyisxander39.68%
9. Continuitypeppercode126.45%
10. Fabulously Optimizedrobotkoer26.45%

Overall, Modrunner keeps tabs on 357 unique projects across both CurseForge and Modrinth. That's a lot of projects!

Despite the top ten tracked projects all being from Modrinth, Modrunner keeps track of more CurseForge projects (194) than it does Modrinth projects (163).

Of all the 31 servers that Modrunner serves, just 3 of them use the "Compact" notification style, with the rest of them sticking with using the default Normal style. Additionally, 2 servers have custom changelog lengths, with rest keeping with the default maximum.

In terms of tracked projects, one server has 170 total tracked projects in it, accounting for 47.62% of the total tracked projects that Modrunner keeps track of. Most other servers track about 7 projects each on average, and the median amount of tracked projects is just 3.

And that's the wrap on the 2022 Modrunner recap! This isn't the end, of course, for Modrunner and I have many ideas still in store for the bot in the year(s) to come, including some major things like receiving project updates via direct messages, project discoverability features (maybe a "mod of the week" kinda thing?) and localization implementation, so that everyone can enjoy and use Modrunner in their language of choice. Look out for these features in the near future!

Thanks again and let's have a great 2023!

  • Shane, aka beansquared

· 2 min read
beansquared

Hey Modrunnerians (?)

Got a small little update for y'all just before the holidays hit (and before a big snowstorm where I live!). Wanted to push some new minor features before taking a short break from working on Modrunner, so here it is. Please let me know what you think!

Now, the changes:

  • Add roles to be pinged for updates - you can now add roles to be pinged by Modrunner when a project receives an update notification. These are project-channel specific, meaning you can pick separate roles for every single project you have tracked, if you'd like. You can even ping multiple roles at once! Head over to the docs on the track command to get started adding ping roles to your tracked projects.
  • Support for forum channels - you can now track projects in forum channels! Every time a project receives an update in a forum channel, the bot will create a new post for that notification, making these ideal for setups where you wish to encourage discussion about newly released project updates.
  • Added some stability checks and fixed some bugs - check the release notes on the releases tab to view the specifics, if you're so inclined.

Happy Holidays from the Modrunner team!