{"id":17921419,"url":"https://github.com/gotson/nightmonkeys","last_synced_at":"2025-03-24T01:32:30.602Z","repository":{"id":40644267,"uuid":"476188545","full_name":"gotson/NightMonkeys","owner":"gotson","description":"Additional plug-ins and extensions for Java's ImageIO using native libraries","archived":false,"fork":false,"pushed_at":"2024-04-15T09:37:28.000Z","size":7885,"stargazers_count":35,"open_issues_count":4,"forks_count":0,"subscribers_count":4,"default_branch":"main","last_synced_at":"2024-05-01T12:55:42.947Z","etag":null,"topics":["imageio","java","java-imageio","java19","jpeg-xl","jxl","plugins","webp"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/gotson.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-03-31T07:00:51.000Z","updated_at":"2024-05-06T07:43:35.438Z","dependencies_parsed_at":"2024-05-06T07:43:31.733Z","dependency_job_id":"dc1ea721-28c2-4917-86dd-88e83e6cc5e4","html_url":"https://github.com/gotson/NightMonkeys","commit_stats":null,"previous_names":[],"tags_count":10,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gotson%2FNightMonkeys","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gotson%2FNightMonkeys/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gotson%2FNightMonkeys/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gotson%2FNightMonkeys/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/gotson","download_url":"https://codeload.github.com/gotson/NightMonkeys/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245194489,"owners_count":20575763,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["imageio","java","java-imageio","java19","jpeg-xl","jxl","plugins","webp"],"created_at":"2024-10-28T20:33:49.737Z","updated_at":"2025-03-24T01:32:25.595Z","avatar_url":"https://github.com/gotson.png","language":"Java","readme":"[![GitHub Workflow Status](https://img.shields.io/github/actions/workflow/status/gotson/NightMonkeys/ci.yml?branch=main\u0026style=flat-square)](https://github.com/gotson/NightMonkeys/actions/workflows/ci.yml)\n[![Maven Central](https://img.shields.io/maven-central/v/com.github.gotson.nightmonkeys/imageio-jxl?color=blue\u0026style=flat-square)](https://search.maven.org/search?q=g:com.github.gotson.nightmonkeys)\n[![Sonatype Nexus (Snapshots)](https://img.shields.io/nexus/s/com.github.gotson.nightmonkeys/imageio-jxl?color=blue\u0026label=maven-snapshot\u0026server=https%3A%2F%2Foss.sonatype.org\u0026style=flat-square)](https://oss.sonatype.org/content/repositories/snapshots/com/github/gotson/nightmonkeys/)\n\n# NightMonkeys\n\nA collection of ImageIO plugins, adding support for newer image formats. NightMonkeys uses the Foreign Linker API\navailable since JDK 22 to access native libraries.\n\n## How it works\n\nNightMonkeys plugins are released as multi-release JARs:\n\n- with Java \u003c 22, a no-op version of the plugin will unregister itself on load, basically doing nothing\n- with Java 22+, the plugin will be available\n\nThis lets you add the dependencies in your project whatever the JDK used, and still enable the plugin at runtime if the necessary JDK is used. \n\n## Supported formats\n\n| Plugin               | Format                                                                                                               | Read | Write | Metadata | TwelveMonkeys Tests | Notes                              |\n|----------------------|----------------------------------------------------------------------------------------------------------------------|------|-------|----------|---------------------|------------------------------------|\n| [jxl](imageio-jxl)   | [Jpeg XL](https://jpeg.org/jpegxl/)                                                                                  | ✔    | -     | -        | ✔                   | See limitations in the plugin page |\n| [webp](imageio-webp) | [WebP](https://developers.google.com/speed/webp)                                                                     | ✔    | -     | -        | ✔                   | See limitations in the plugin page |\n| [heif](imageio-heif) | [HEIF](https://en.wikipedia.org/wiki/High_Efficiency_Image_File_Format) \u0026 [AVIF](https://en.wikipedia.org/wiki/AVIF) | ✔    | -     | -        | ✔                   | See limitations in the plugin page |\n\nWhen possible, the plugins will use the extensive test suite\nfrom [TwelveMonkeys](https://github.com/haraldk/TwelveMonkeys), which covers much more test cases than simple\ndecoding/encoding.\n\n## Requirements\n\nIn order for the plugins to run properly, you will need to:\n\n- Run Java 22 with the following options:\n\n```\n--enable-native-access=ALL-UNNAMED\n```\n\n- Make sure the path to the directory containing the native libraries is contained in the Java system\n  property `java.library.path` (check\n  also [this](https://stackoverflow.com/questions/20038789/default-java-library-path)).\n  - For Linux, normally it works fine when installed from a package manager. You can add the libraries' path to\n    the `LD_LIBRARY_PATH` environment variable.\n  - For Mac, if using HomeBrew, you will need to set `JAVA_LIBRARY_PATH` to `/usr/local/lib/` or `/opt/homebrew/lib/`.\n\n## Installation\n\n### Gradle\n\n```groovy\nruntimeOnly \"com.github.gotson.nightmonkeys:imageio-{plugin}:{version}\"\n```\n\n### Gradle (Kotlin DSL)\n\n```kotlin\nruntimeOnly(\"com.github.gotson.nightmonkeys:imageio-{plugin}:{version}\")\n```\n\n### Maven\n\n```xml\n\u003cdependency\u003e\n  \u003cgroupId\u003ecom.github.gotson.nightmonkeys\u003c/groupId\u003e\n  \u003cartifactId\u003eimageio-{plugin}\u003c/artifactId\u003e\n  \u003cversion\u003e{version}\u003c/version\u003e\n  \u003cscope\u003eruntime\u003c/scope\u003e\n\u003c/dependency\u003e\n```\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgotson%2Fnightmonkeys","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgotson%2Fnightmonkeys","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgotson%2Fnightmonkeys/lists"}