Users must be able to see the info about other users.
How?
The page will be located at /user/[user_id] where user_id is the ID of the user. Since it's common that some users may know someone via their osu! ID, we can also add a users/osu/[osu_user_id] route that simply redirects to the former.
If the user is currently banned, the page must return a 404 response.
The page must include the following data:
The user's ID, date registered, are they admin, are they an approved host, are they the owner of Kyoso.
Their osu! and Discord ID and username (links to the respective profiles can be used instead of boringly displaying long user IDs).
Their global osu! standard rank, are they restricted and the country listed on their osu! profile.
Tournament badges they've won (if any) displayed as images (like in their osu! profile).
Previous bans on Kyoso (if any) with each ban detailing when it was issued at, when it was lifted (if it applies), when it was revoked (if it applies), the ban reason, the revoke reason (if it applies).
If you want a reference as to how all this can be displayed, you can check the manage users admin page and look up a user to see how the user's data is displayed there.
To get all this data, we need to get it from the database during SSR and then have it be displayed to the user.
Why?
Users must be able to see the info about other users.
How?
The page will be located at
/user/[user_id]
where user_id is the ID of the user. Since it's common that some users may know someone via their osu! ID, we can also add ausers/osu/[osu_user_id]
route that simply redirects to the former.If the user is currently banned, the page must return a 404 response.
The page must include the following data:
If you want a reference as to how all this can be displayed, you can check the manage users admin page and look up a user to see how the user's data is displayed there.
To get all this data, we need to get it from the database during SSR and then have it be displayed to the user.