Skip to content

Commit

Permalink
docs: v1.0.0
Browse files Browse the repository at this point in the history
  • Loading branch information
lidel authored Feb 19, 2021
1 parent 65de345 commit d3ecd73
Showing 1 changed file with 23 additions and 14 deletions.
37 changes: 23 additions & 14 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,11 +3,11 @@
[![](https://img.shields.io/badge/made%20by-Protocol%20Labs-blue.svg?style=flat-square)](http://protocol.ai)
[![](https://img.shields.io/badge/project-IPFS-blue.svg?style=flat-square)](https://ipfs.io/)
[![](https://github.com/ipfs/pinning-services-api-spec/workflows/Lint/badge.svg?branch=master)](https://github.com/ipfs/pinning-services-api-spec/actions?query=workflow%3ALint+branch%3Amaster)
[![](https://img.shields.io/badge/status-reliable-green.svg?style=flat-square)](https://github.com/ipfs/specs/#understanding-the-meaning-of-the-spec-badges-and-their-lifecycle)
[![](https://img.shields.io/badge/status-stable-brightgreen.svg?style=flat-square)](https://github.com/ipfs/specs/#understanding-the-meaning-of-the-spec-badges-and-their-lifecycle)

> This repository contains the specs for the vendor-agnostic pinning service API for the IPFS ecosystem
[![pinning-services-api-contex.png](https://bafkreiffr3aebionzn4c3j7awih5erdwdlvrtjpdl4i3awyasslaaqpx2e.ipfs.dweb.link/?filename=pinning-services-api-contex.png)](#about)
[![pinning-services-api-contex.png](https://user-images.githubusercontent.com/157609/108572745-438fc300-7313-11eb-93c3-c8b29c0da988.png)](#about)

- [About](#about)
- [Specification](#specification)
Expand All @@ -32,14 +32,14 @@ The API spec in this repo is the first step towards that future.

This API is defined as an OpenAPI spec in YAML format:

* **[ipfs-pinning-service.yaml](./ipfs-pinning-service.yaml)**
* **[ipfs-pinning-service.yaml](./ipfs-pinning-service.yaml)** ![](https://img.shields.io/badge/status-stable-brightgreen.svg?style=flat-square)


### Documentation

You can find human-readable API documentation generated from the YAML file here:

- **[https://ipfs.github.io/pinning-services-api-spec](https://ipfs.github.io/pinning-services-api-spec/)**
- **[https://ipfs.github.io/pinning-services-api-spec](https://ipfs.github.io/pinning-services-api-spec/)** ![](https://img.shields.io/badge/status-stable-brightgreen.svg?style=flat-square)

### Code generation

Expand All @@ -49,28 +49,34 @@ Give it a try before you resort to implementing things from scratch.

## Adoption

Built-in support for pinning services exposing this API is coming to IPFS tooling in Q3:
- [go-ipfs](https://github.com/ipfs/go-ipfs) / [js-ipfs](https://github.com/ipfs/js-ipfs) (CLI/HTTP API) ![](https://img.shields.io/badge/status-wip-orange.svg?style=flat-square)
Built-in support for pinning services exposing this API is coming to IPFS tooling:
- [go-ipfs](https://github.com/ipfs/go-ipfs) ![](https://img.shields.io/badge/status-stable-brightgreen.svg?style=flat-square)
- [js-ipfs-http-client](https://www.npmjs.com/package/ipfs-http-client) ![](https://img.shields.io/badge/status-stable-brightgreen.svg?style=flat-square)
- [js-ipfs](https://www.npmjs.com/package/ipfs) ![](https://img.shields.io/badge/status-wip-orange.svg?style=flat-square)
- [ipfs-desktop](https://github.com/ipfs-shipyard/ipfs-desktop) / [ipfs-webui](https://github.com/ipfs-shipyard/ipfs-webui) (GUIs) ![](https://img.shields.io/badge/status-wip-orange.svg?style=flat-square)

### Client libraries
- [go-pinning-service-http-client](https://github.com/ipfs/go-pinning-service-http-client) ![](https://img.shields.io/badge/status-wip-orange.svg?style=flat-square)
An IPFS Pinning Service HTTP Client library for Go
- [go-pinning-service-http-client](https://github.com/ipfs/go-pinning-service-http-client) ![](https://img.shields.io/badge/status-stable-brightgreen.svg?style=flat-square)
An IPFS Pinning Service HTTP Client library for Go, used by go-ipfs internally.
- https://openapi-generator.tech/docs/generators#client-generators ![](https://img.shields.io/badge/status-reliable-green.svg?style=flat-square)
Use [YAML file](./ipfs-pinning-service.yaml) to generate client for your language

### Server implementations
- https://github.com/ipfs-shipyard/rb-pinning-service-api ![](https://img.shields.io/badge/status-wip-orange.svg?style=flat-square)
- https://github.com/ipfs-shipyard/rb-pinning-service-api ![](https://img.shields.io/badge/status-reliable-green.svg?style=flat-square)
A Rails app that implements the IPFS Pinning Service API
- https://github.com/ipfs-shipyard/js-mock-ipfs-pinning-service ![](https://img.shields.io/badge/status-reliable-green.svg?style=flat-square)
Implementation of in-memory service for testing purposes
- https://openapi-generator.tech/docs/generators#server-generators ![](https://img.shields.io/badge/status-reliable-green.svg?style=flat-square)
Use [YAML file](./ipfs-pinning-service.yaml) to generate server boilerplate for your language

### Online services
- `{your project could go here}`
We are currently working with pinning services to expose this API — so stay tuned! ![](https://img.shields.io/badge/status-wip-orange.svg?style=flat-square)

### Timeline

- 2019 Q2
- Creation of a generic pinning service API proposed in [ipfs/notes/issues/378](https://github.com/ipfs/notes/issues/378)
- 2020 Q2
- Pinning Summit 2020 ([website](https://ipfspinningsummit.com/), [recorded talks](https://www.youtube.com/watch?v=rYD2lfuatJM&list=PLuhRWgmPaHtTvsxuZ9T-tMlu_v0lja6v5))
- 2021 Q1
- [go-ipfs 0.8.0](https://github.com/ipfs/go-ipfs/releases/v0.8.0) shipped with built-in client for v1.0.0 of this API
- 2020 Q3
- IPFS GUI WG working on adding support for pinning services into IPFS Desktop/Web UI:
- [Epic: Pinning service integration · Issue #91 · ipfs/ipfs-gui](https://github.com/ipfs/ipfs-gui/issues/91)
Expand All @@ -79,7 +85,10 @@ Built-in support for pinning services exposing this API is coming to IPFS toolin
- 2020-07-14: Spec in draft status is ready for implementation
- 2020-08: Addressing feedback from early implementers
- 2020-09: End-to-end testing

- 2020 Q2
- Pinning Summit 2020 ([website](https://ipfspinningsummit.com/), [recorded talks](https://www.youtube.com/watch?v=rYD2lfuatJM&list=PLuhRWgmPaHtTvsxuZ9T-tMlu_v0lja6v5))
- 2019 Q2
- Creation of a generic pinning service API proposed in [ipfs/notes/issues/378](https://github.com/ipfs/notes/issues/378)

## Contribute

Expand Down

0 comments on commit d3ecd73

Please sign in to comment.