100 Commits
Author SHA1 Message Date
Emma AlexiaandGitHub 6efdfdf17e chore: 100k Modrinth projects 🎉 (#5150)
Signed-off-by: Emma Alexia <emma@modrinth.com>
2026-01-18 19:10:47 +00:00
Emma AlexiaandGitHub 50a87ba933 Fix user deletion (again) (again) (notifications_deliveries) (#5112)
Doesn't seem to work fully with notification IDs, not sure why.
2026-01-13 22:25:00 +00:00
30106d5f82 Provide more specific payout method names on frontend (#4977)
* Provide more specific payout method names on frontend

Been getting a lot of confused tickets recently of people withdrawing to PayPal but then not recognizing what "Tremendous" means. This should clarify things.

* feat: improve icons + names for withdrawals

* Update apps/frontend/src/components/ui/dashboard/RevenueTransaction.vue

Co-authored-by: Emma Alexia <emma@modrinth.com>
Signed-off-by: Calum H. <hendersoncal117@gmail.com>

* fix: icons

* fix: object cover

* feat: icons for crypto + bank

* fix: remove empty null

* fix: qa

---------

Signed-off-by: Calum H. <hendersoncal117@gmail.com>
Co-authored-by: Calum H. <contact@cal.engineer>
2025-12-29 13:08:33 +00:00
803c17de31 Fix modpack exports in the app being broken due to new file types (#4944)
* Fix modpack exports in the app being broken due to new file types

* pnpm fix to fix CI

---------

Co-authored-by: aecsocket <aecsocket@tutanota.com>
2025-12-21 08:49:53 +00:00
f874856452 Fix user deletion with new notifications_deliveries table for real (#4473)
Maybe this will work? I dunno but users are still saying they're getting errors deleting accs. In theory it shouldn't matter if the transaction all gets committed at the same time, though, right? I can't really test this so I would like someone to tell me whether this will actually make a difference.

Co-authored-by: François-X. T <fetch@ferrous.ch>
2025-10-03 13:03:02 +00:00
Emma AlexiaandGitHub 324ad65d7c Fix user deletion with new notification_deliveries table (#4437) 2025-09-29 18:04:22 +00:00
Emma AlexiaandGitHub c017038f71 Fix error when trying to delete user with uploaded images (#4295)
* Fix error when trying to delete user with uploaded images

`{"error":"database_error","description":"Database Error: Error while interacting with the database: error returned from database: update or delete on table \"users\" violates foreign key constraint \"uploaded_images_owner_id_fkey\" on table \"uploaded_images\""}`

* Update certain things to use Ghost instead of deleting entirely

* Fix mistake
2025-09-06 23:05:34 +00:00
Emma AlexiaandGitHub a6d08e9d50 Fix users getting a notification for private moderation messages (#4302) 2025-08-31 15:40:53 +00:00
Emma AlexiaandGitHub dc4ef332f8 Clarify date timestamps in search docs (#4293)
Replaces #4206
2025-08-30 18:46:51 +00:00
Emma AlexiaandGitHub 652f2e241f Allow server cancellation from admin billing (#4294)
Also fixes an issue (jankily) where Modrinth+ shows as an unknown product
2025-08-30 18:46:20 +00:00
Emma AlexiaandGitHub 5fd27bcb65 Fix larger gallery image uploading (#4292)
This reconciles a couple of differences between the frontend and backend regarding gallery image uploads.

- Frontend: The frontend thought that the limit should be 500 MiB for gallery images. This is obviously not right. It has been updated to 5 MiB.
- Backend: The backend has been rejecting anything between 2 MiB and 5 MiB, but this is inconsistent with prior usage, where the limit used to be 5 MiB. It has been updated to allow anything under 5 MiB.

Fixes #4291
2025-08-29 20:05:02 +00:00
0dee21814d Change "Billing" link on dashboard for admins (#3951)
* Change "Billing" link on dashboard for admins

Requires an archon change before merging

* change order

* steal changes from prospector's old PR

supersedes #3234

Co-authored-by: Prospector <prospectordev@gmail.com>

* lint?

---------

Co-authored-by: Prospector <prospectordev@gmail.com>
2025-08-04 20:13:33 +00:00
Emma AlexiaandGitHub b8982a6d17 Hopefully fix collection visibility once and for all (#4070)
* Hopefully fix collection visibility once and for all

Follow up to #3408 and #3864

* Use same unlisted approach for collections as is used for projects
2025-07-27 18:23:49 +00:00
Emma AlexiaandGitHub ff88724d01 Allow modification of failed charges on admin billing page (#4045)
* Allow modification of failed charges on admin billing page

Allows cancelling a failed subscription and forcing another charge attempt

* use addNotification
2025-07-27 17:30:16 +00:00
Emma AlexiaandGitHub 7dffb352d5 Fix duplicate "Upload icon Select file" on collections (#4069)
* Fix duplicate "Upload icon Select file" on collections

![lol](https://i.imgur.com/NKfvfQD.png)

* fix lint
2025-07-27 17:27:02 +00:00
Emma AlexiaandGitHub 1df6e29aa1 Ensure server status info is always passed to "My servers" page (#4071)
This took an insanely long time to debug and figure out you would not believe
2025-07-27 17:10:52 +00:00
Emma AlexiaandGitHub 5deb4179ad Re-enable the Moderation tab for projects that are approved (#4067)
By request of the moderation team. This would allow easier access
if, e.g., the moderators tell the author of a metadata problem they
need to correct.
2025-07-27 17:07:39 +00:00
Emma AlexiaandGitHub 7d76fe1b6a Add more info about last attempts to admin billing dashboard (#4029) 2025-07-21 08:35:36 +00:00
Emma AlexiaandGitHub bcf46d440b Count failed payments as "open" charges (#4013)
This allows people to cancel failed payments, currently it fails with error "There is no open charge for this subscription"
2025-07-19 14:33:37 +00:00
Emma AlexiaandGitHub a8caa1afc3 Clarify that Modrinth Servers are for Java Edition (#4021) 2025-07-18 18:37:06 +00:00
Emma AlexiaandGitHub 98e9a8473d Fix NeoForge instance importing from MultiMC/Prism (#4016)
Fixes DEV-170
2025-07-18 13:00:11 +00:00
Emma AlexiaandGitHub 0c3e23db96 Improve errors when email is already in use (#4014)
Fixes #1485

Also fixes an issue where email_verified was being set to true regardless of whether the oauth provider provides an email (thus indicating that a null email is verified)
2025-07-18 01:59:48 +00:00
3a10e63756 Add blog post: Pride Month 2025 campaign (#3879)
* Add blog post: Pride Month 2025 campaign

* fix lint maybe

* Revert changes to other stuff

* run fix

* use local links

* re-run fix

---------

Co-authored-by: Prospector <prospectordev@gmail.com>
2025-07-02 01:26:49 +00:00
Emma AlexiaandGitHub fdb2b1195e Fix some copy codes and avatars not showing up (#3876)
I blame @imb11
2025-07-01 01:02:38 +00:00
Emma AlexiaandGitHub 14b1ff79e0 Fix empty collections being shown on user pages (#3864)
Originally changed in #3408 but didn't address the full issue.
2025-06-29 13:37:41 +00:00
Emma AlexiaandGitHub 479aaf503b Force RAM to be listed by bytes instead of percent when in dev mode (#3853)
* Force RAM to be listed by bytes instead of percent when in dev mode

Makes things easier for support.

* fix lint
2025-06-29 08:47:03 +00:00
Emma AlexiaandGitHub e2668f20b7 Give free upgrades when billing period is near its end (#3851)
Some users elect to try to perform their upgrade immediately before their subscription renews. However, we throw an error whenever the proration charge is under 30 cents because we lose more money on fees than we gain by charging the customer. This PR changes charges so that the user's server will simply be provided a free upgrade instead of requiring them to wait until after their next renewal.
2025-06-28 21:57:38 +00:00
Emma AlexiaandGitHub 17ca209862 Always show developer mode attributes on admin billing page (#3850)
* Always show developer mode attributes on admin billing page

* Unprovision servers by default when refunding
2025-06-27 01:04:52 +00:00
Emma AlexiaandGitHub 6f03fae233 Clear owner's project cache after deleting organization (#3794)
* Clear owner's project cache after deleting organization

Fixes an issue where people would think their projects were deleted along with their organization, when this isn't actually the case.

* address PR review

* Update apps/labrinth/src/routes/v3/organizations.rs

Signed-off-by: Emma Alexia <wafflecoffee7@gmail.com>

* Fix lint

* actually fix lint

---------

Signed-off-by: Emma Alexia <wafflecoffee7@gmail.com>
2025-06-26 19:30:58 +00:00
Emma AlexiaandGitHub 22fc0c994d Remove new-projects channel emojis (#3843)
* Remove new-projects channel emojis

With new loaders, this functionality has become unwieldy. We don't have enough emoji slots in the server for the number of emojis we'd need for the loaders. It is easiest to simply format them in the same way knossos does.

Note: I forgor how the borrow checker works, this compiles but I'm sure it's gore to anyone who actually knows the difference between a string slice and a String, I come from Javaland though so pls forgive

* Rename func accordingly
2025-06-26 18:54:22 +00:00
Emma AlexiaandGitHub 5bdff3929b Allow failed subscriptions to be cancelled (#3795)
When a payment for a subscription fails, we continue to try to re-attempt retrieving payment for 30 days.

Sometimes making it fail is an intentional choice on the user's part (e.g. Privacy.com card) or other times the user just doesn't want their subscription anymore after it fails.

This PR allows users with a failed payment to simply cancel instead of waiting for the 30-day timer to set in.
2025-06-16 05:41:07 +00:00
06f1df1995 Fix random_projects route not returning the requested number of projects (#3758)
* Fix random_projects route not returning the requested number of projects

* fix(labrinth): further improve random project route SQL query

* chore: fix typo in comment

* tweak(labrinth): more apparent and fast randomness for `random_projects_get`

* tweak(labrinth): even better random projects query

* chore: address formatting review

---------

Co-authored-by: Alejandro González <me@alegon.dev>
2025-06-08 23:49:39 +00:00
Emma AlexiaandGitHub 7b535a1c2a Enable charity payouts through Tremendous (#3732) 2025-06-01 23:53:45 +00:00
Emma AlexiaandGitHub b66d99c59c Improve error when Modrinth's PayPal account is out of funds (#3718)
* Improve error when Modrinth's PayPal account is out of funds

* improve msg
2025-05-30 16:28:00 +00:00
Emma AlexiaandGitHub 74cf3f076e Automatically fail payments that are older than 30 days (#3697) 2025-05-25 19:36:19 +00:00
Emma AlexiaandGitHub 84adf79564 Fix resubscription of servers with failed payments (#3696)
* Fix resubscription of servers with failed payments

Resolves MOD-55

* run fix
2025-05-25 19:36:14 +00:00
Emma AlexiaandGitHub dc0d923cee Automatically cancel servers with failed payments older than 30d (#3695) 2025-05-25 19:36:11 +00:00
Emma AlexiaandGitHub 2ffd7476aa Get rid of a bit of dead code around server suspensions (#3693)
Might fix some issues with people getting errors saying their servers are suspended when it's actually upgrading
2025-05-25 19:36:07 +00:00
Emma AlexiaandGitHub 49aac6bdca Fix {{ email_description }} in Modrinth emails (#3703) 2025-05-25 19:34:46 +00:00
863bf62f8d Fix updated field including deleted versions (#3643)
* Fix `updated` field including deleted versions

Four years ago, I created issue modrinth/labrinth#200. Today, while it adorns a different name (modrinth/code#2766), the issue remains the same. In celebration of Modrinth's oldest bug report, here is a fix.

Instead of having a separate `updated` field, it simply pulls the publish date of the most recent version. This should also allow the `updated` column on the `mods` table to be dropped at a later date, but I would rather get confirmation that it works before we go ahead with that.

Fixes #2766

* Update apps/labrinth/src/database/models/project_item.rs

Co-authored-by: Alejandro González <7822554+AlexTMjugador@users.noreply.github.com>
Signed-off-by: Emma Alexia <wafflecoffee7@gmail.com>

---------

Signed-off-by: Emma Alexia <wafflecoffee7@gmail.com>
Co-authored-by: Alejandro González <7822554+AlexTMjugador@users.noreply.github.com>
2025-05-12 18:19:30 +00:00
9a6390bb4d Fix organization projects route properly (#3633)
* Revert "fix: capitalization of ID org route breaks projects list (#3621)"

This reverts commit e4adbb9469.

* Fix organization projects route properly

Reverted #3621 because it caused more bugs to be created, in the form of organizations with capital letters not showing any projects

* Update apps/labrinth/src/routes/v3/organizations.rs

Co-authored-by: Alejandro González <7822554+AlexTMjugador@users.noreply.github.com>
Signed-off-by: Emma Alexia <wafflecoffee7@gmail.com>

* fix copy-paste error

---------

Signed-off-by: Emma Alexia <wafflecoffee7@gmail.com>
Co-authored-by: Alejandro González <7822554+AlexTMjugador@users.noreply.github.com>
2025-05-09 23:28:52 +00:00
Emma AlexiaandGitHub f71830e0fa Add helpful functions for interacting with db manually (#3602)
Brought over from modrinth/labrinth#862
2025-05-03 12:15:15 +00:00
0508f13cb6 Quick moderation fixes (#3556)
* Quick moderation fixes

* Fix Odyssey mods linking
* Add "Copy permanent link" button to orgs, users, projects
* Use permanent links for Slack webhooks

* Update apps/frontend/src/pages/organization/[id].vue

Co-authored-by: Alejandro González <7822554+AlexTMjugador@users.noreply.github.com>
Signed-off-by: Emma Alexia <wafflecoffee7@gmail.com>

* Run Prettier

---------

Signed-off-by: Emma Alexia <wafflecoffee7@gmail.com>
Co-authored-by: Alejandro González <7822554+AlexTMjugador@users.noreply.github.com>
Co-authored-by: Alejandro González <me@alegon.dev>
Co-authored-by: Prospector <6166773+Prospector@users.noreply.github.com>
2025-04-29 01:18:43 +00:00
Emma AlexiaandGitHub 2f68c62b3a Improve wording about unprovisioned servers (#3574) 2025-04-29 01:13:44 +00:00
f9c0c1bc53 Clarify that Modrinth Servers prices are in USD (#3553)
Co-authored-by: Prospector <6166773+Prospector@users.noreply.github.com>
2025-04-26 02:35:30 +00:00
Emma AlexiaandGitHub 5c1f198397 Add ability to delete user icon (#3383)
* Add user icon delete route

By request of moderation, but also just generally nice to have

* Add relevant docs and frontend

* Add v2 version
2025-04-19 12:49:23 +00:00
Emma AlexiaandGitHub 3cd6718384 Fix inverted condition with refunds (#3539)
Signed-off-by: Emma Alexia <emma@modrinth.com>
2025-04-19 12:25:43 +00:00
Emma AlexiaandGitHub 84a28e045b Allow servers to be unprovisioned without issuing a refund (#3534)
* Allow servers to be unprovisioned without issuing a refund

for very specific weird circumstances where a server gets stuck/etc; useful for support

* still create a charge

* Fix compile
2025-04-19 04:39:18 +00:00
Emma AlexiaandGitHub d0aef27f7b Fix deleting a user that has a prior subscription (#3533)
(for real this time)
2025-04-19 04:38:54 +00:00
f2ec89e62b Fix two database errors (#3483)
* Fixes error when an admin tries transferring project ownership
* Fixes error when trying to delete a user when they previously have a transaction

Co-authored-by: Jai Agrawal <18202329+Geometrically@users.noreply.github.com>
2025-04-12 22:21:02 -07:00
365367dd16 Hide collections with no projects from public view (#3408)
Co-authored-by: Prospector <6166773+Prospector@users.noreply.github.com>
2025-04-06 20:54:18 +00:00
Emma AlexiaandGitHub 31a001bbc1 Fix moderation review page (#3389) 2025-03-12 09:53:11 -07:00
Emma AlexiaandGitHub 1ea196051f Update CCPA notice with updated information for Servers (#3384) 2025-03-11 17:00:30 -07:00
28b0d34bff Fix search query parameter validation (#863)
* Fix search query parameter validation

* fix compile

* make it actually work

---------

Co-authored-by: Geometrically <18202329+Geometrically@users.noreply.github.com>
2024-04-22 11:40:31 -07:00
Emma AlexiaandGitHub 5a4a9b570e Fix discrepancy in Markdown rendering (#1595) 2024-01-27 09:35:04 -08:00
Emma AlexiaandGitHub d6393653e1 Add new section to the rules about bypassing Mojang restrictions (#1561) 2024-01-11 19:12:50 -05:00
f16e93bd3a Raise project limit on collections from 64 to 1024 (#847)
Co-authored-by: Geometrically <18202329+Geometrically@users.noreply.github.com>
2024-01-11 10:27:38 -05:00
abbeed394e Fix project visibility in hash routes (#792)
* Fix project visibility in hash routes

* improve

* clippy

* CLIPPYYYYYYYYYYYYYY

* clippy, I hope you know that I hate you

---------

Co-authored-by: Geometrically <18202329+Geometrically@users.noreply.github.com>
2023-12-12 20:45:32 -07:00
Emma AlexiaandGitHub 54114e6e94 Fix #901 - add YT nocookie and Discord to CSP (#904) 2023-12-11 20:52:28 -07:00
Emma AlexiaandGitHub 1bd721d523 Enable light mode and OLED mode as options (#936)
Will eventually need the new component from knossos to be ported, but this will suffice for now
2023-12-11 20:51:29 -07:00
Emma AlexiaandGitHub e4cb8b71dd Fix version editing on modpacks returning a "too large" error (#1455) 2023-11-20 18:57:06 -05:00
Emma AlexiaandGitHub 61a2c362b9 Fix grammatical issue in privacy policy (#1449)
* Fix grammatical issue in privacy policy

* Update privacy.vue
2023-11-17 15:46:01 -07:00
Emma AlexiaandGitHub a7584d62c7 Update omorphia to 0.6.7 (#1446)
* Update omorphia to 0.6.7

* shouldn't've been changed
2023-11-13 18:30:06 -07:00
Emma AlexiaandGitHub 23ccaacdee Fix outdated moderation warning (#1430) 2023-10-30 21:28:48 -04:00
Emma AlexiaandGitHub 91f79d2be0 Bump version v0.6.2 (#112) 2023-10-20 23:58:59 -04:00
Emma AlexiaandGitHub 8369330053 Move many things over from Knossos (and other rearrangements) (#102) 2023-10-16 21:18:23 -04:00
Emma Alexia TriphoraandGitHub 58a61051b9 Don't show processing projects in thread message inbox (#722)
They already show up in the Review tab, so, no reason to also have them in the Messages tab
2023-10-01 13:22:29 -07:00
Emma Alexia TriphoraandGitHub a6766ef1c0 Fix theme color not showing up properly in OpenGraph/Discord embeds (#1384) 2023-10-01 13:22:05 -07:00
Emma Alexia TriphoraandGitHub 4a74ee0d72 Update legal pages, especially rules (#1373)
* WIP rules update

* Update

* Run fix

* Entirely unnecessary

* Address comments
2023-09-30 15:45:53 -07:00
Emma Alexia TriphoraandGitHub 51777c3f33 Replace moderation project queue with moderation action log (#718) 2023-09-24 12:04:58 -04:00
Emma Alexia TriphoraandGitHub 3767e9fae9 Only show mod files in pack external dependencies (#710) 2023-09-24 11:49:41 -04:00
Emma Alexia TriphoraandGitHub 4bbfc8ccc5 Add NeoForge modpack and autoupdater support (#707) 2023-09-24 11:40:03 -04:00
Emma Alexia TriphoraandGitHub 28b63bac38 Update XSS values to be consistent with knossos (#93)
Implements modrinth/knossos#1208
Implements modrinth/knossos#1239

Also closes modrinth/knossos#1371
2023-09-24 08:07:22 -05:00
Emma Alexia TriphoraandGitHub 5cab618bf7 Fix reports sometimes being broken on the mod dashboard (#717) 2023-09-24 08:04:18 -05:00
Emma Alexia TriphoraandGitHub fc64719bb8 SEO cleanup (#1367)
* SEO/Metadata cleanup

May split rules changes into its own PR

* Revert rules/terms changes as they are now on a separate branch

* Update [searchProjectType].vue

* Update terms.vue
2023-09-22 11:45:03 -05:00
Emma Alexia TriphoraandGitHub f65f949a36 Fix issue with thread messages not being sent to moderators on non-processing projects (#705) 2023-09-15 15:39:03 -04:00
Emma Alexia TriphoraandGitHub e6818023a3 Allow moderators to edit version info (#703)
* Allow moderators to edit version info

* Clippy fix
2023-09-11 14:21:50 -04:00
Emma Alexia TriphoraandGitHub ec35392cd1 Merge pull request #90 from modrinth/sync-issue-templates/default 2023-09-10 12:16:28 -04:00
Emma Alexia TriphoraandGitHub 54f55d44dc Fix dependency capitalization (#1351) 2023-09-02 16:45:13 -04:00
Emma Alexia TriphoraandGitHub 568dc1625e Skip CI in all Crowdin commits (#1338) 2023-09-02 09:42:00 -04:00
Emma Alexia TriphoraandGitHub 57964282ee Miscellaneous CSS cleanup (and make the report modal look better) (#1334) 2023-08-24 15:21:12 -04:00
Emma Alexia TriphoraandGitHub a7c7234589 Fix project deletion going to a non-existent page (#1332) 2023-08-23 12:13:25 -04:00
Emma Alexia TriphoraandGitHub f22f1971cb Don't abbreviate moderation statistics (#1333) 2023-08-23 12:02:45 -04:00
Emma Alexia TriphoraandGitHub 28a5806492 Remove defunct modpacks alpha notice setting (#1331) 2023-08-23 11:55:20 -04:00
Emma Alexia TriphoraandGitHub 806fcb6ed2 Project moderation tab improvements (#1323) 2023-08-21 13:29:09 -04:00
e9c7f5d664 Fix #683 (#691)
* Fix #683

* whitespace

---------

Co-authored-by: Geometrically <18202329+Geometrically@users.noreply.github.com>
2023-08-21 10:44:09 -04:00
c85f12fe2c Fix closing reports not marking the report as closed (#690)
Co-authored-by: Geometrically <18202329+Geometrically@users.noreply.github.com>
2023-08-21 10:43:06 -04:00
Emma Alexia TriphoraandGitHub 3649573ba1 Fix "approve with reply" button being always pressable (#1322) 2023-08-20 13:30:55 -04:00
EmmaandGitHub a4bead1bde Fix report buttons not working for signed-out users (#1255) 2023-08-02 14:03:31 -07:00
EmmaandGitHub 0d15024bd2 Add links to the markdown reference on the docs (#1254) 2023-08-02 14:02:51 -07:00
EmmaandGitHub 6509d726b3 Remove useless moderation stuff (#1253)
Moderation messages are superseded by threads, so there is no need to have the ModalModeration anymore, it would only confuse new moderators
2023-08-02 14:02:29 -07:00
EmmaandGitHub 706c6d46da Fix bug with wsrv (#1239)
* Fix bug with wsrv

* Address comment
2023-08-01 15:35:06 -07:00
EmmaandGitHub b0057b130e [no ci] Sync issue templates (#641) 2023-06-21 19:32:36 -04:00
EmmaandGitHub 05d994889d [no ci] Sync issue templates (#1216) 2023-06-21 19:32:21 -04:00
EmmaandGitHub 9bbd4891fd [no ci] Sync issue templates (#220) 2023-06-21 19:32:13 -04:00
EmmaandGitHub 97b9ec5cc7 Fix two bugs with Forge mod exporting (#1187) 2023-06-11 14:41:44 -04:00
EmmaandGitHub cdab3d0eff Change uses of "Include snapshots" to "Include all versions" (#1178) 2023-06-11 14:41:32 -04:00
triphoraandGitHub 66364354da Small landing page fixes (#993)
* Miscellaneous fixes/improvements to landing page

* The downsides of not being able to set up a local testing env, in a commit

* Update how stats are retrieved

* Fix prettier

* Make requested changes

* Restore nuxt.config.js

* Restore composables/tag.js

* Update index.vue
2023-06-06 14:22:36 -07:00
triphoraandGitHub d55f1163a2 Improve withheld message banner (#1167) 2023-06-06 14:15:30 -07:00
triphoraandGitHub 0bfaeb8521 Update Discord webhook emojis (#592)
Fixes #569
2023-05-19 11:04:40 -07:00