This user has been banned.
June 16, 2025
Did a bunch of things:
<br>
Switched my minecraft proxy from Velocity to Infrarust. this gives better compatibility and performance
<br>
Added recursive queries: instead of querying for the world, getting the version id, querying the version, getting the loader id, and finally querying the loader, the backend can recursively query values, and return all of them at once
<br>
Improved caching
Implemented the server.properties editing in the frontend, together with limits on what users can edit. the server admin can configure the values users can edit, as well as limit the values they set (all enforced server-side of course). In the video, on the left there is a user with almost no restrictions to editing, and on the right is a standard user with default restrictions.
There was also a bug where only one operation on any world could be performed at the same time, meaning if user was to delete a world, which takes around 10 seconds, other requests trying to get the status of any other world would have to wait for that deletion to finish. this is now fixed.
Ah also scrolling and toasts are broken on chromium no idea why
Heyy i think i'm starting to get the hang of this. Now you can create and start a server all from a UI
(in the video @0:40 you can skip to 1:00)
- Improved the world creation screen
- Implemented proper world images (no uploads done in the frontend yet)
- New /world/{id} page
- World option editing
- World starting/stopping
- Some minor backend changes
Added a registration screen
* the registrations screen varies based on server settings (whether it requires an invite link or not), it can also include a custom message (which i forgot to include in the video).
* invite link is checked before account creation, and locks the form if it is invalid (through a public API endpoint)
* Redid the input forms
* added input validation
* the app checks if the username is taken (through a public API endpoint)
* Improved styling and made the app fit mobile screens
Now the sqlx
-based code actually works. i mostly rewrote the database code to utilize a custom query builder
as a side effect, query filters now work better, and allow for < and > operands, as well as dates and base64 encoded blobs (haven't tested this one). they now also actually validate the filter data
Now when the backend server is first launched, it will initialize the folder structure, prompt the user for the username and password of the default admin account, and then download the latest version of velocity
I have also revamped the permission system. Now instead of the permissions being stored per-user, users are assigned to a group, which holds their permissions. this makes managing large amounts much easier
[YOU CAN ACTUALLY USE THIS TO PLAY MINECRAFT RIGHT NOW! THERE IS NO FAKE BACKEND LIKE MOST PROJECTS HAVE] [this is mostly a backend project, and i spent most of my time writing that. there is a bunch of things that are in the backend, but not frontend] A Minecraft server management platform written in Rust and a Vue frontend (although the API is frontend agnostic). It supports multiple Users, with each having their own limits on how many worlds they can have, and resources they can use.
This was widely regarded as a great move by everyone.