Skip to content

Commit 73138c4

Browse files
committed
updated README.md
1 parent 6286233 commit 73138c4

1 file changed

Lines changed: 78 additions & 13 deletions

File tree

README.md

Lines changed: 78 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# GrandNode2 Java Client
1+
# grand-node-java-client
22

33
**A JVM client for GrandNode2 API**
44

@@ -18,19 +18,57 @@
1818

1919
## Preview
2020

21-
WIP
21+
grand-node-java-client is a JVM client for GrandNode2 API and aims to provide a high level of abstraction for using its
22+
APIs.
23+
24+
This project is powered by [Retrofit](https://github.com/square/retrofit)
25+
and [Project Lombok](https://github.com/projectlombok/lombok)
26+
therefore it's easy to use if you are already familiar with them, but it's also limited by their constraints. However,
27+
since `Retrofit` is a highly customizable library and this project doesn't prevent you from customizing it, you can form
28+
a custom client by changing various properties of the Retrofit instance(like `OkHttpClient`, `baseUrl`, etc.).
29+
30+
This library uses a custom `CallAdapter` for its API calls (`CallX`) which is an extended version of Retrofit's `Call`
31+
with some additional methods so this is an aspect of the library that is not customizable.
2232

2333
## Compatibility
2434

2535
**JVM11+**
2636

2737
## Usage
2838

29-
WIP
39+
[![javadoc](https://javadoc.io/badge2/com.github.TradersTeam/grand-node-java-client/javadoc.svg)](https://javadoc.io/doc/com.github.TradersTeam/grand-node-java-client)
40+
41+
### Quick Guide
42+
43+
1. Create a client instance from `GrandNodeClient` class and customize it if you want with the help of `builder` method.
44+
2. Create a service instance related to the API you want to use by calling `create` method on the client.
45+
3. Call the service's methods(different type of API calls defined for each API service).
46+
4. Handle the response using various callbacks that are provided by `Retrofit` and other custom callbacks(`CallX`).
47+
48+
---
49+
50+
### Java
51+
52+
```java
53+
54+
```
55+
56+
more examples [here](https://github.com/TradersTeam/grand-node-java-client/tree/master/example-java)
57+
58+
---
59+
60+
### Kotlin
61+
62+
```kotlin
63+
64+
```
65+
66+
more examples [here](https://github.com/TradersTeam/grand-node-java-client/tree/master/example-kotlin)
3067

3168
## Download
3269

33-
Find the latest version from [Maven Artifact](https://repo1.maven.org/maven2/io/github/TradersTeam/grand-node-java-client/maven-metadata.xml)
70+
Find the latest version
71+
from [Maven Artifact](https://repo1.maven.org/maven2/io/github/TradersTeam/grand-node-java-client/maven-metadata.xml)
3472

3573
### Gradle Groovy DSL
3674

@@ -56,6 +94,7 @@ dependencies {
5694
Add the dependency
5795

5896
```xml
97+
5998
<dependency>
6099
<groupId>io.github.TradersTeam</groupId>
61100
<artifactId>grand-node-java-client</artifactId>
@@ -74,13 +113,44 @@ dependencies {
74113

75114
## Features
76115

77-
WIP
78-
116+
- Usable in JVM only (Java, Kotlin, etc.) projects
117+
- Usable in Android projects
118+
- Custom lambda callbacks for handling the response
119+
120+
### Supported APIs
121+
122+
- [ ] [BrandAPI](https://github.com/TradersTeam/grand-node-java-client/issues/28)
123+
- [ ] BrandLayoutAPI
124+
- [ ] [CategoryAPI](https://github.com/TradersTeam/grand-node-java-client/issues/33)
125+
- [ ] CategoryLayoutAPI
126+
- [ ] CollectionAPI
127+
- [ ] CollectionLayoutAPI
128+
- [ ] CountryAPI
129+
- [ ] CurrencyAPI
130+
- [ ] CustomerAPI
131+
- [ ] CustomerGroupAPI
132+
- [ ] DeliveryDateAPI
133+
- [ ] LanguageAPI
134+
- [ ] MetadataAPI
135+
- [ ] PickupPointAPI
136+
- [ ] PictureAPI
137+
- [ ] ProductAPI
138+
- [ ] ProductAttributeAPI
139+
- [ ] ProductLayoutAPI
140+
- [ ] ShippingMethodAPI
141+
- [ ] SpecificationAttributeAPI
142+
- [ ] StateProvinceAPI
143+
- [ ] StoreAPI
144+
- [ ] VendorAPI
145+
- [ ] WarehouseAPI
79146

80147
## Changelog
81148

82-
WIP
83-
149+
- 1.0.0 - Initial alpha release
150+
- 1.0.1 - WIP
151+
- 1.0.2 - WIP
152+
- 1.0.3 - WIP
153+
- 1.0.4 - WIP
84154

85155
## License
86156

@@ -90,8 +160,3 @@ WIP
90160
> which include larger works using a licensed work, under the same
91161
> license. Copyright and license notices must be preserved. Contributors
92162
> provide an express grant of patent rights.
93-
94-
## Contributors
95-
96-
WIP
97-

0 commit comments

Comments
 (0)