Josiah Glosson 47af459f24
Migrate Java code to Gradle (#3833)
* Create get_resource_file macro to get an embedded resource

If the tauri feature is enabled, the resource will be loaded from Tauri resources.
If the tauri feature is disabled, the resource will be extracted to a temp directory.

* Wrap process execution to inject system properties through stdin

* Pass the time values as ISO 8601 datetimes

* Remove entirely internal modrinth.process.uuid

* Redo Java version checking somewhat and fix a few bugs with it

* Fix game launch with early access versions of Java

* Format Java code

* Use Gradle to build Java code

* Make Gradle build reproducible

* Fix constant rebuilds

* Get rid of unnecessary rebuilds

* Fix modrinth.profile.modified being the same as modrinth.profile.created

* Make javac use all lints and treat them as errors

* Force Gradle color output

* Add Java formatting config

* Make gradlew executable

* Revert to manually extracting class files

* Switch to using update resource macro

* fix: make `app-lib` build again

---------

Co-authored-by: Alejandro González <me@alegon.dev>
2025-06-26 14:56:35 +00:00
2025-06-23 22:40:16 +00:00
2025-06-26 14:56:35 +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%