Skip to content

RedStoneMango/Mango-Utils

Repository files navigation

☕ Mango-Utils

Mango-Utils is a free, open-source collection of lightweight Java utility classes—ranging from simple I/O helpers to secure password hashing and configurable log management.


🔽 Installation

📦 Using the JAR

To use Mango-Utils as a standalone dependency:

  1. Clone the repository locally.
  2. Build the project using your preferred method (mvn package, gradle build, etc.).
  3. Add the generated JAR file to your classpath.

Ⓜ️ Maven

Add the JitPack repository to your pom.xml:

<repositories>
    <repository>
        <id>jitpack.io</id>
        <url>https://jitpack.io</url>
    </repository>
</repositories>

Then add the dependency:

<dependency>
    <groupId>com.github.redstonemango</groupId>
    <artifactId>mango-utils</artifactId>
    <version>VERSION</version>
</dependency>

Replace VERSION with the newest release version of Mango-Utils: GitHub release (latest by date)


🐘 Gradle

In your settings.gradle (if using version catalog or dependency management):

dependencyResolutionManagement {
    repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
    repositories {
        mavenCentral()
        maven { url 'https://jitpack.io' }
    }
}

Then add the dependency to your build.gradle:

dependencies {
    implementation 'com.github.redstonemango:mango-utils: VERSION'
}

Replace VERSION with the newest release version of Mango-Utils: GitHub release (latest by date)


☕ Direct Source Copy

You may also directly copy specific utility classes into your own project, as long as you:

  1. Keep the copyright notice at the top of the file.
  2. Follow the terms of the MIT License.

📖 Available Utilities

Class Description
MangoIO Handy I/O utilities like recursive directory deletion.
NameConverter Converts names written in different naming conventions (e.g., camelCase, snake_case) from one convention to the other.
SemanticVersion Compare and sort semantic versions (e.g., 1.2.0 vs 1.10.0). Useful for dependency versioning.
Hasher Password hashing and verification using PBKDF2 with HMAC-SHA-256.
CypherEncryption Easy AES-GCM encryption/decryption with password-based key derivation (PBKDF2).
CliArg Parses command-line arguments (flags, keys, values, etc.) from String[] or raw input strings.
LogManager Customizable logging utility that redirects system output, styles console messages, and manages log files.
OperatingSystem A safe and cross-platform alternative to java.awt.Desktop's open and browse methods. Also including OS detection, config path helpers, and event normalization.

✅ Why Use Mango-Utils?

  • 🛠️ Simple and modular design
  • 📦 Easy integration with Maven and Gradle
  • 🔐 Includes security utilities like password hashing and AES encryption
  • 💡 Utility classes that fill common gaps in the Java standard library
  • 🔄 Actively maintained and tested across real-world projects

📎 License

This project is licensed under GitHub License.

You may use the project as long as you follow the terms of that very license.


💬 Feedback & Contributions

Suggestions, issues, and pull requests are welcome! Feel free to open a discussion or submit a PR to contribute.

About

Free, open-source collection of easy-to-use Java utility classes.

Topics

Resources

License

Stars

Watchers

Forks

Languages