https://github.com/mizosoft/methanol
⚗️ Lightweight HTTP extensions for Java & Kotlin
https://github.com/mizosoft/methanol
brotli cache client decompression gson http jackson jaxb multipart protobuf
Last synced: about 13 hours ago
JSON representation
⚗️ Lightweight HTTP extensions for Java & Kotlin
- Host: GitHub
- URL: https://github.com/mizosoft/methanol
- Owner: mizosoft
- License: mit
- Created: 2020-02-07T21:28:09.000Z (about 6 years ago)
- Default Branch: master
- Last Pushed: 2026-02-25T02:03:33.000Z (about 1 month ago)
- Last Synced: 2026-02-25T06:59:50.872Z (about 1 month ago)
- Topics: brotli, cache, client, decompression, gson, http, jackson, jaxb, multipart, protobuf
- Language: Java
- Homepage: https://mizosoft.github.io/methanol
- Size: 19.7 MB
- Stars: 290
- Watchers: 8
- Forks: 16
- Open Issues: 14
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
- awesome-java - methanol - HTTP client extensions library. (Projects / HTTP Clients)
- fucking-awesome-java - methanol - HTTP client extensions library. (Projects / HTTP Clients)
- awesome-java - Methanol
- awesome-java-zh - methanol - HTTP客户端扩展库。 (项目 / HTTP客户端)
- awesome - mizosoft/methanol - ⚗️ Lightweight HTTP extensions for Java & Kotlin (<a name="Java"></a>Java)
README
# Methanol
[](https://github.com/mizosoft/methanol/actions)
[](https://coveralls.io/github/mizosoft/methanol?branch=master)
[](https://search.maven.org/search?q=g:%22com.github.mizosoft.methanol%22%20AND%20a:%22methanol%22)
[](https://mizosoft.github.io/methanol/api/latest/)
Java enjoys a neat, built-in [HTTP client](https://openjdk.java.net/groups/net/httpclient/intro.html). However, it lacks key HTTP features like [multipart uploads](https://bugs.openjdk.org/browse/JDK-8235761), caching and response decompression.
***Methanol*** comes in to fill these gaps. The library comprises a set of lightweight, yet powerful extensions aimed at making it much easier & more productive to work with `java.net.http`.
You can say it's an `HttpClient` wrapper, but you'll see it almost seamlessly integrates with the standard API you might already know.
Methanol isn't invasive. The core library has zero runtime dependencies. However, special attention
is given to object mapping, so integration with libraries like Jackson or Gson becomes a breeze.
There's also a Kotlin DSL!
## Prerequisites (at runtime)
- Java 11 or higher
Build time prerequisites in [CONTRIBUTING](CONTRIBUTING.md).
## Installation
### Gradle
```kotlin
implementation("com.github.mizosoft.methanol:methanol:1.9.0")
```
### Maven
```xml
com.github.mizosoft.methanol
methanol
1.9.0
```
## Contributing
See [CONTRIBUTING](./CONTRIBUTING.md)
## License
[MIT](https://choosealicense.com/licenses/mit/)