From d601ef5b063c71e4e2b374aba17f8015046eeef7 Mon Sep 17 00:00:00 2001 From: Codestech <56263050+Codestech1@users.noreply.github.com> Date: Sat, 11 Jul 2026 14:55:21 +0200 Subject: [PATCH 1/4] feat(readme): add initial README file --- README.md | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 README.md diff --git a/README.md b/README.md new file mode 100644 index 0000000..f98842f --- /dev/null +++ b/README.md @@ -0,0 +1,26 @@ +# 🧩 Modules +A Java library making modular programming easier. Made for Hypejet Network™, now available to everyone. + +## 🎬 Use cases +This library was made with many use cases in mind, for example: +- **Modular monolith architecture** - you can use Modules to split features of your project into multiple independant modules. This allows the application to keep running, even if one of those modules fail. +- **Creating and removing complex environments at any time at runtime** - for example, Hypejet uses this library to create and load minigame rounds, which are then fully unloaded and removed. +- **And anywhere you need modular environment!** - Modules was designed to be feature-complete and provide advanced features. + +## ❓ Why Modules? +There are some adventages of using this library over others or custom approach: +- **Lightweight** - weights less than 20kB. +- **Ease of use** - basic usage is really simple, you can create your first modular environment in minutes! +- **Fast** - thanks to its simplicity, the module loading mechanism itself is really fast. In practice however, the overall speed depends on how fast your modules load and unload. +- **Keeps dependencies simple** - requires only plain Java 25 and [SLF4J](https://www.slf4j.org), which is compatible with almost every common logging framework and is widely used nowadays. +- **Fail-safe** - if any module fails to register or load, no exception is thrown and your application continues to run. The only exception is when circular module loading is found, but it fails early and is easy to detect, you can find out more on the wiki. +- **Feature-complete** - Modules was designed not only for Hypejet, it can provide more advanced features where needed. + +## 📽️ Usage +You can find out how to use Modules on our [wiki](https://github.com/Hypejet/Modules/wiki). + +## 👥 Contributing +Pull requests are welcome. There are no strict requirements for now, though - if possible - please try to follow our code style. But don't worry, in case there is something wrong, it will most likely get corrected by maintainers. + +## 📃 License +This project was licensed under [Apache 2.0 License](LICENSE). From f69e5923bcbe64f68ee5ed899c7bb744a1f10299 Mon Sep 17 00:00:00 2001 From: Codestech <56263050+Codestech1@users.noreply.github.com> Date: Sat, 11 Jul 2026 15:17:44 +0200 Subject: [PATCH 2/4] feat(readme): minor improvements and fixes --- README.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index f98842f..5d75997 100644 --- a/README.md +++ b/README.md @@ -9,18 +9,18 @@ This library was made with many use cases in mind, for example: ## ❓ Why Modules? There are some adventages of using this library over others or custom approach: -- **Lightweight** - weights less than 20kB. +- **Lightweight** - weighs less than 20kB. - **Ease of use** - basic usage is really simple, you can create your first modular environment in minutes! - **Fast** - thanks to its simplicity, the module loading mechanism itself is really fast. In practice however, the overall speed depends on how fast your modules load and unload. - **Keeps dependencies simple** - requires only plain Java 25 and [SLF4J](https://www.slf4j.org), which is compatible with almost every common logging framework and is widely used nowadays. -- **Fail-safe** - if any module fails to register or load, no exception is thrown and your application continues to run. The only exception is when circular module loading is found, but it fails early and is easy to detect, you can find out more on the wiki. +- **Fail-safe** - if any module fails to register or load, no exception is thrown, and your application continues to run. The only exception is when circular module loading is found, but it fails early and is easy to detect, you can find out more on the wiki. - **Feature-complete** - Modules was designed not only for Hypejet, it can provide more advanced features where needed. ## 📽️ Usage You can find out how to use Modules on our [wiki](https://github.com/Hypejet/Modules/wiki). ## 👥 Contributing -Pull requests are welcome. There are no strict requirements for now, though - if possible - please try to follow our code style. But don't worry, in case there is something wrong, it will most likely get corrected by maintainers. +Pull requests are welcome. There are no strict requirements for now, however - if possible - please try to follow our code style. But don't worry, in case there is something wrong, it will most likely get corrected by maintainers. ## 📃 License -This project was licensed under [Apache 2.0 License](LICENSE). +This project was licensed under the terms of [Apache 2.0 License](LICENSE). From 77396a4f3b753fd61e7328ee4eada2bb0a383d5c Mon Sep 17 00:00:00 2001 From: Codestech <56263050+Codestech1@users.noreply.github.com> Date: Sun, 12 Jul 2026 18:03:32 +0200 Subject: [PATCH 3/4] chore(readme): remove emojis from README --- README.md | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/README.md b/README.md index 5d75997..c222c33 100644 --- a/README.md +++ b/README.md @@ -1,13 +1,13 @@ -# 🧩 Modules -A Java library making modular programming easier. Made for Hypejet Network™, now available to everyone. +# Modules +A Java library making modular programming easier. Made for Hypejet Network, now available to everyone. -## 🎬 Use cases +## Use cases This library was made with many use cases in mind, for example: - **Modular monolith architecture** - you can use Modules to split features of your project into multiple independant modules. This allows the application to keep running, even if one of those modules fail. - **Creating and removing complex environments at any time at runtime** - for example, Hypejet uses this library to create and load minigame rounds, which are then fully unloaded and removed. - **And anywhere you need modular environment!** - Modules was designed to be feature-complete and provide advanced features. -## ❓ Why Modules? +## Why Modules? There are some adventages of using this library over others or custom approach: - **Lightweight** - weighs less than 20kB. - **Ease of use** - basic usage is really simple, you can create your first modular environment in minutes! @@ -16,11 +16,11 @@ There are some adventages of using this library over others or custom approach: - **Fail-safe** - if any module fails to register or load, no exception is thrown, and your application continues to run. The only exception is when circular module loading is found, but it fails early and is easy to detect, you can find out more on the wiki. - **Feature-complete** - Modules was designed not only for Hypejet, it can provide more advanced features where needed. -## 📽️ Usage +## Usage You can find out how to use Modules on our [wiki](https://github.com/Hypejet/Modules/wiki). -## 👥 Contributing +## Contributing Pull requests are welcome. There are no strict requirements for now, however - if possible - please try to follow our code style. But don't worry, in case there is something wrong, it will most likely get corrected by maintainers. -## 📃 License +## License This project was licensed under the terms of [Apache 2.0 License](LICENSE). From cfeb1bf2bc792fece6267af4c9902257cae2b730 Mon Sep 17 00:00:00 2001 From: Codestech <56263050+Codestech1@users.noreply.github.com> Date: Mon, 13 Jul 2026 19:22:13 +0200 Subject: [PATCH 4/4] feat(readme): implement minor improvements from the pull request review --- README.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index c222c33..911232b 100644 --- a/README.md +++ b/README.md @@ -4,11 +4,11 @@ A Java library making modular programming easier. Made for Hypejet Network, now ## Use cases This library was made with many use cases in mind, for example: - **Modular monolith architecture** - you can use Modules to split features of your project into multiple independant modules. This allows the application to keep running, even if one of those modules fail. -- **Creating and removing complex environments at any time at runtime** - for example, Hypejet uses this library to create and load minigame rounds, which are then fully unloaded and removed. -- **And anywhere you need modular environment!** - Modules was designed to be feature-complete and provide advanced features. +- **Creating and removing complex environments at any time during runtime** - for example, Hypejet uses this library to create and load minigame rounds, which are then fully unloaded and removed. +- **And anywhere you need modules!** - Modules was designed to be feature-complete and provide advanced features, such as abstract modules or dependency overriding. You can learn more about it on the wiki. ## Why Modules? -There are some adventages of using this library over others or custom approach: +Here's some advantages Modules has over similar libraries: - **Lightweight** - weighs less than 20kB. - **Ease of use** - basic usage is really simple, you can create your first modular environment in minutes! - **Fast** - thanks to its simplicity, the module loading mechanism itself is really fast. In practice however, the overall speed depends on how fast your modules load and unload. @@ -23,4 +23,4 @@ You can find out how to use Modules on our [wiki](https://github.com/Hypejet/Mod Pull requests are welcome. There are no strict requirements for now, however - if possible - please try to follow our code style. But don't worry, in case there is something wrong, it will most likely get corrected by maintainers. ## License -This project was licensed under the terms of [Apache 2.0 License](LICENSE). +This project is licensed under the terms of [Apache 2.0 License](LICENSE).