An Unofficial Asynchronous Java API Wrapper for MyWaifuList
You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Go to file
Hammy a8949a241c Use Records instead of normal classes
JDK-16 has support for Records which are much superior here
3 years ago
.github Create dependabot.yml 3 years ago
src Use Records instead of normal classes 3 years ago
.gitignore Add .gitignore 4 years ago
Dockerfile Modify Dockerfile & Jenkinsfile 4 years ago
Jenkinsfile Update Jenkinsfile 3 years ago
LICENSE Initial commit 4 years ago
README.md Update README.md 3 years ago
pom.xml Upgrade to JDK-16 3 years ago

README.md

fossa license maven-central build-status codecov issues pull-requests

MyWaifuWrapper

An Asynchronous Java API Wrapper for MyWaifuList

Summary

This is an Asynchronous API Wrapper for MyWaifuList

Disclaimer

Given that MyWaifuList is a primarily user-driven website and this API is currently in an Alpha state, the data returned may not be fully complete and at its best quality

Configuration

Creating The MyWaifuClient

There are 2 ways to create the MyWaifuClient

  • createDefault(apiKey)
  • build()

createDefault()

createDefault(apiKey) will provide a default implementation and return a MyWaifuClient ready to be used. Only the apiKey is required to instantiate MyWaifuClient.

public class Main {
    private static void main(String[] args) {
        MyWaifuClient myWaifuClient = MyWaifuClient.createDefault("apiKey");
    }
}

build()

build() is used to build the object from the ground up, allowing for the fine-tuning of properties within the MyWaifuClient. Not all the additional properties need to specified within the builder but the bare minimum would be the apiKey within the Builder constructor and then .build()

import me.goudham.MyWaifuClient;

import java.net.http.HttpClient;
import java.time.Duration;

public class Main {
    private static void main(String[] args) {
        // Bare Minimum Config 
        // (Would recommend using createDefault())
        MyWaifuClient myWaifuClient = new MyWaifuClient.Builder("apiKey").build();
        
        // Creation Through Builder
        MyWaifuClient myWaifuClient = new MyWaifuClient.Builder("apiKey")
                .withVersion(HttpClient.Version.HTTP_2)
                .withConnectTimeout(Duration.ofMinutes(10))
                .build();
    }
}

Usage

TODO

Installation

Latest Stable Version: maven-central

Be sure to replace the **VERSION** key below with the one of the versions shown above!

Maven

<!-- https://mvnrepository.com/artifact/me.goudham/MyWaifuWrapper -->
<dependency>
    <groupId>me.goudham</groupId>
    <artifactId>MyWaifuWrapper</artifactId>
    <version>VERSION</version>
</dependency>

Gradle

repositories {
    mavenCentral()
}

dependencies {
    // https://mvnrepository.com/artifact/me.goudham/MyWaifuWrapper
    implementation group: 'me.goudham', name: 'MyWaifuWrapper', version: 'VERSION'
}

License

FOSSA Status