docs: reworked README
Signed-off-by: SoXX <soxx@fenpa.ws>
This commit is contained in:
parent
8c662f78fd
commit
cdf042d79d
169
README.md
169
README.md
@ -1,15 +1,158 @@
|
|||||||
# Go-e621 SDK
|
# Go-e621 SDK
|
||||||
|
|
||||||
An unofficial e621 SDK (Client) library to interact with **e621**, **e923** and **e6ai**. Maintained by the Anthrove Development Team.
|
An unofficial e621 SDK (Client) library to interact with **e621**, **e923** and **e6ai**.
|
||||||
|
Maintained by the Anthrove Development Team.
|
||||||
|
|
||||||
- Caching?
|
## Table of Contents
|
||||||
- Auto pagination
|
|
||||||
- sync
|
|
||||||
- async
|
|
||||||
- connected/inelegant calls
|
|
||||||
- more docs
|
|
||||||
|
|
||||||
# Completeness
|
- [Installation](#installation)
|
||||||
|
- [Usage](#usage)
|
||||||
|
- [Configuration](#configuration)
|
||||||
|
- [Examples](#examples)
|
||||||
|
- [Feature Completeness](#feature-completeness)
|
||||||
|
|
||||||
|
## Installation
|
||||||
|
|
||||||
|
Include instructions on how to install or get your Golang client API. This might include:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
go get -u git.dragse.it/anthrove/e621-sdk-go
|
||||||
|
```
|
||||||
|
|
||||||
|
## Usage
|
||||||
|
|
||||||
|
```golang
|
||||||
|
package main
|
||||||
|
|
||||||
|
import (
|
||||||
|
"git.dragse.it/anthrove/e621-sdk-go/pkg/e621"
|
||||||
|
"log"
|
||||||
|
)
|
||||||
|
|
||||||
|
func main() {
|
||||||
|
|
||||||
|
ApiUser := ""
|
||||||
|
ApiKey := ""
|
||||||
|
e621User := ""
|
||||||
|
|
||||||
|
client := e621.NewClient(ApiUser, ApiKey)
|
||||||
|
user, err := client.GetUserByName(e621User).Execute()
|
||||||
|
if err != nil {
|
||||||
|
log.Panic(err)
|
||||||
|
}
|
||||||
|
log.Printf("User ID of user %s: %d ", user.Name, user.ID)
|
||||||
|
}
|
||||||
|
|
||||||
|
```
|
||||||
|
|
||||||
|
## Examples
|
||||||
|
|
||||||
|
This SDK Supports three levels of usage, Low Level, Mid Level & High Level.
|
||||||
|
|
||||||
|
All of those are available to you, you find some examples in the example directory.
|
||||||
|
|
||||||
|
High Level:
|
||||||
|
|
||||||
|
````go
|
||||||
|
package main
|
||||||
|
|
||||||
|
import (
|
||||||
|
"git.dragse.it/anthrove/e621-sdk-go/pkg/e621"
|
||||||
|
"log"
|
||||||
|
)
|
||||||
|
|
||||||
|
func main() {
|
||||||
|
|
||||||
|
ApiUser := ""
|
||||||
|
ApiKey := ""
|
||||||
|
e621User := ""
|
||||||
|
|
||||||
|
client := e621.NewClient(ApiUser, ApiKey)
|
||||||
|
user, err := client.GetUserByName(e621User).Execute()
|
||||||
|
if err != nil {
|
||||||
|
log.Panic(err)
|
||||||
|
}
|
||||||
|
log.Printf("User ID of user %s: %d ", user.Name, user.ID)
|
||||||
|
}
|
||||||
|
````
|
||||||
|
|
||||||
|
Mid Level:
|
||||||
|
|
||||||
|
````go
|
||||||
|
package main
|
||||||
|
|
||||||
|
import (
|
||||||
|
"git.dragse.it/anthrove/e621-sdk-go/pkg/e621/builder"
|
||||||
|
"git.dragse.it/anthrove/e621-sdk-go/pkg/e621/model"
|
||||||
|
"log"
|
||||||
|
"net/http"
|
||||||
|
)
|
||||||
|
|
||||||
|
func main() {
|
||||||
|
// Define the request context with essential information.
|
||||||
|
requestContext := model.RequestContext{
|
||||||
|
Client: http.Client{},
|
||||||
|
Host: "https://e621.net",
|
||||||
|
UserAgent: "Go-e621-SDK (@username)",
|
||||||
|
Username: "API_USER", // Replace with your username
|
||||||
|
APIKey: "API_KEY", // Replace with your API key
|
||||||
|
}
|
||||||
|
|
||||||
|
// Specify the username for retrieval.
|
||||||
|
username := "" // Replace with the desired username.
|
||||||
|
|
||||||
|
// Call the GetUser function to retrieve the specified user.
|
||||||
|
userBuilder := builder.NewGetUserBuilder(requestContext)
|
||||||
|
user, err := userBuilder.SetUsername(username).Execute()
|
||||||
|
|
||||||
|
if err != nil {
|
||||||
|
panic(err)
|
||||||
|
}
|
||||||
|
|
||||||
|
log.Printf("User ID of user %s: %d ", user.Name, user.ID)
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
````
|
||||||
|
|
||||||
|
Low Level:
|
||||||
|
|
||||||
|
````go
|
||||||
|
package main
|
||||||
|
|
||||||
|
import (
|
||||||
|
"git.dragse.it/anthrove/e621-sdk-go/pkg/e621/endpoints"
|
||||||
|
"git.dragse.it/anthrove/e621-sdk-go/pkg/e621/model"
|
||||||
|
"log"
|
||||||
|
"net/http"
|
||||||
|
)
|
||||||
|
|
||||||
|
func main() {
|
||||||
|
// Define the request context with essential information.
|
||||||
|
requestContext := model.RequestContext{
|
||||||
|
Client: http.Client{},
|
||||||
|
Host: "https://e621.net",
|
||||||
|
UserAgent: "Go-e621-SDK (@username)",
|
||||||
|
Username: "API_USER", // Replace with your username
|
||||||
|
APIKey: "API_KEY", // Replace with your API key
|
||||||
|
}
|
||||||
|
|
||||||
|
// Specify the username for retrieval.
|
||||||
|
username := "" // Replace with the desired username.
|
||||||
|
|
||||||
|
// Call the GetUser function to retrieve the specified user.
|
||||||
|
user, err := endpoints.GetUser(requestContext, username)
|
||||||
|
|
||||||
|
if err != nil {
|
||||||
|
panic(err)
|
||||||
|
}
|
||||||
|
|
||||||
|
log.Printf("User ID of user %s: %d ", user.Name, user.ID)
|
||||||
|
}
|
||||||
|
|
||||||
|
````
|
||||||
|
|
||||||
|
## Feature Completeness
|
||||||
|
|
||||||
_Legend_
|
_Legend_
|
||||||
|
|
||||||
@ -23,7 +166,7 @@ _High Level API_
|
|||||||
|
|
||||||
| Area | Complete | Comment |
|
| Area | Complete | Comment |
|
||||||
|:-----------------|:------------------:|:--------|
|
|:-----------------|:------------------:|:--------|
|
||||||
| Authentication | :x: | |
|
| Authentication | :heavy_check_mark: | |
|
||||||
| Posts | :heavy_minus_sign: | |
|
| Posts | :heavy_minus_sign: | |
|
||||||
| Tags | :heavy_minus_sign: | |
|
| Tags | :heavy_minus_sign: | |
|
||||||
| Tag aliases | :x: | |
|
| Tag aliases | :x: | |
|
||||||
@ -38,7 +181,7 @@ _Mid Level API_
|
|||||||
|
|
||||||
| Area | Get | Set |
|
| Area | Get | Set |
|
||||||
|:-----------------|:------------------:|:----|
|
|:-----------------|:------------------:|:----|
|
||||||
| Authentication | :x: | |
|
| Authentication | :heavy_check_mark: | |
|
||||||
| Posts | :heavy_check_mark: | |
|
| Posts | :heavy_check_mark: | |
|
||||||
| Tags | :heavy_check_mark: | |
|
| Tags | :heavy_check_mark: | |
|
||||||
| Tag aliases | :x: | |
|
| Tag aliases | :x: | |
|
||||||
@ -47,13 +190,13 @@ _Mid Level API_
|
|||||||
| Pools | :heavy_check_mark: | |
|
| Pools | :heavy_check_mark: | |
|
||||||
| Users | :heavy_check_mark: | |
|
| Users | :heavy_check_mark: | |
|
||||||
| Favorites | :heavy_check_mark: | |
|
| Favorites | :heavy_check_mark: | |
|
||||||
| DB export | :x: |
|
| DB export | :heavy_check_mark: |
|
||||||
|
|
||||||
_Low Level API_
|
_Low Level API_
|
||||||
|
|
||||||
| Area | Get | Set |
|
| Area | Get | Set |
|
||||||
|:-----------------|:------------------:|:----|
|
|:-----------------|:------------------:|:----|
|
||||||
| Authentication | :x: | |
|
| Authentication | :heavy_check_mark: | |
|
||||||
| Posts | :heavy_check_mark: | |
|
| Posts | :heavy_check_mark: | |
|
||||||
| Tags | :heavy_check_mark: | |
|
| Tags | :heavy_check_mark: | |
|
||||||
| Tag aliases | :x: | |
|
| Tag aliases | :x: | |
|
||||||
@ -62,4 +205,4 @@ _Low Level API_
|
|||||||
| Pools | :heavy_check_mark: | |
|
| Pools | :heavy_check_mark: | |
|
||||||
| Users | :heavy_check_mark: | |
|
| Users | :heavy_check_mark: | |
|
||||||
| Favorites | :heavy_check_mark: | |
|
| Favorites | :heavy_check_mark: | |
|
||||||
| DB export | :x: | |
|
| DB export | :heavy_check_mark: | |
|
65
README.md.OLD
Normal file
65
README.md.OLD
Normal file
@ -0,0 +1,65 @@
|
|||||||
|
# Go-e621 SDK
|
||||||
|
|
||||||
|
An unofficial e621 SDK (Client) library to interact with **e621**, **e923** and **e6ai**. Maintained by the Anthrove Development Team.
|
||||||
|
|
||||||
|
- Caching?
|
||||||
|
- Auto pagination
|
||||||
|
- sync
|
||||||
|
- async
|
||||||
|
- connected/inelegant calls
|
||||||
|
- more docs
|
||||||
|
|
||||||
|
# Completeness
|
||||||
|
|
||||||
|
_Legend_
|
||||||
|
|
||||||
|
| Symbol | Meaning |
|
||||||
|
|:------------------:|:----------------------|
|
||||||
|
| :x: | Not implemented |
|
||||||
|
| :heavy_minus_sign: | Partially implemented |
|
||||||
|
| :heavy_check_mark: | Fully implemented |
|
||||||
|
|
||||||
|
_High Level API_
|
||||||
|
|
||||||
|
| Area | Complete | Comment |
|
||||||
|
|:-----------------|:------------------:|:--------|
|
||||||
|
| Authentication | :x: | |
|
||||||
|
| Posts | :heavy_minus_sign: | |
|
||||||
|
| Tags | :heavy_minus_sign: | |
|
||||||
|
| Tag aliases | :x: | |
|
||||||
|
| Tag implications | :x: | |
|
||||||
|
| Notes | :x: | |
|
||||||
|
| Pools | :x: | |
|
||||||
|
| Users | :heavy_check_mark: | |
|
||||||
|
| Favorites | :heavy_minus_sign: | |
|
||||||
|
| DB export | :x: | |
|
||||||
|
|
||||||
|
_Mid Level API_
|
||||||
|
|
||||||
|
| Area | Get | Set |
|
||||||
|
|:-----------------|:------------------:|:----|
|
||||||
|
| Authentication | :x: | |
|
||||||
|
| Posts | :heavy_check_mark: | |
|
||||||
|
| Tags | :heavy_check_mark: | |
|
||||||
|
| Tag aliases | :x: | |
|
||||||
|
| Tag implications | :x: | |
|
||||||
|
| Notes | :heavy_check_mark: | |
|
||||||
|
| Pools | :heavy_check_mark: | |
|
||||||
|
| Users | :heavy_check_mark: | |
|
||||||
|
| Favorites | :heavy_check_mark: | |
|
||||||
|
| DB export | :x: |
|
||||||
|
|
||||||
|
_Low Level API_
|
||||||
|
|
||||||
|
| Area | Get | Set |
|
||||||
|
|:-----------------|:------------------:|:----|
|
||||||
|
| Authentication | :x: | |
|
||||||
|
| Posts | :heavy_check_mark: | |
|
||||||
|
| Tags | :heavy_check_mark: | |
|
||||||
|
| Tag aliases | :x: | |
|
||||||
|
| Tag implications | :x: | |
|
||||||
|
| Notes | :heavy_check_mark: | |
|
||||||
|
| Pools | :heavy_check_mark: | |
|
||||||
|
| Users | :heavy_check_mark: | |
|
||||||
|
| Favorites | :heavy_check_mark: | |
|
||||||
|
| DB export | :x: | |
|
Reference in New Issue
Block a user