Josiah Glosson cc34e69524
Initial shared instances backend (#3800)
* Create base shared instance migration and initial routes

* Fix build

* Add version uploads

* Add permissions field for shared instance users

* Actually use permissions field

* Add "public" flag to shared instances that allow GETing them without authorization

* Add the ability to get and list shared instance versions

* Add the ability to delete shared instance versions

* Fix build after merge

* Secured file hosting (#3784)

* Remove Backblaze-specific file-hosting backend

* Added S3_USES_PATH_STYLE_BUCKETS

* Remove unused file_id parameter from delete_file_version

* Add support for separate public and private buckets in labrinth::file_hosting

* Rename delete_file_version to delete_file

* Add (untested) get_url_for_private_file

* Remove url field from shared instance routes

* Remove url field from shared instance routes

* Use private bucket for shared instance versions

* Make S3 environment variables fully separate between public and private buckets

* Change file host expiry for shared instances to 180 seconds

* Fix lint

* Merge shared instance migrations into a single migration

* Replace shared instance owners with Ghost instead of deleting the instance
2025-06-19 19:46:12 +00:00
2025-05-07 19:08:38 -07:00
2024-07-04 21:46:29 -07:00
2024-11-02 21:14:00 -07:00
2024-07-03 00:18:35 -07:00
2024-07-04 21:46:29 -07:00
2024-12-11 19:54:18 -08:00
2024-10-19 19:46:40 -07:00
2025-05-09 12:27:55 +00:00
2024-12-11 19:54:18 -08:00

Modrinth Monorepo Cover

Issues Pull Requests Contributors Lines Commit Activity Last Commit

Modrinth Monorepo

Welcome to the Modrinth Monorepo, the primary codebase for the Modrinth web interface and app. It contains Lines lines of code and has Contributors contributors!

If you're not a developer and you've stumbled upon this repository, you can access the web interface on the Modrinth website and download the latest release of the app here.

Development

This repository contains two primary packages. For detailed development information, please refer to their respective READMEs:

Contributing

We welcome contributions! Before submitting any contributions, please read our contributing guidelines.

If you plan to fork this repository for your own purposes, please review our copying guidelines.

Security

If you discover a security vulnerability within our codebase, please follow our responsible disclosure guidelines.

Support

If you need help with the Modrinth web interface or app, please visit our support page. For general inquiries, you can also join our Discord server.

License

All packages in this repository are licensed under their respective licenses. Refer to the LICENSE file in each package for more information.

Description
The Modrinth monorepo containing all code which powers Modrinth!
Readme 122 MiB
Languages
Rust 44.6%
Vue 38.6%
TypeScript 8.2%
HTML 5.1%
JavaScript 1.9%
Other 1.5%