X-Git-Url: http://git.squeep.com/?p=squeep-indieauth-helper;a=blobdiff_plain;f=README.md;h=fe3e36296cee72e413ba9d4b382c4a24c0f1a0ba;hp=dee619d5bdf2c32e5332f2581e0e5888dd062b47;hb=HEAD;hpb=e648aedc1c912cd07da0b1dad7be3910248b25c9 diff --git a/README.md b/README.md index dee619d..9a67a6d 100644 --- a/README.md +++ b/README.md @@ -1,17 +1,40 @@ # IndieAuth Helper -Just some abstractions for interacting with IndieAuth sites. +Just some abstractions for interacting with IndieAuth sites, basically wrapping `got` and `microformats-parser` mf2 parsing, performing various validations according to the specification, and some other fiddly bits. + +This is currently quite opinionated, and likely is only really useful in the context of Squeep Framework Applications. Notable methods on the Communication class: -- static generatePKCE(length) +- `static async generatePKCE(length)` Create a code and verifier for use in an IndieAuth transaction. -- fetchProfile(urlObject) +- `async validateProfile(url)` + Check that a url meets specification requirements to be a profile. + +- `async fetchProfile(urlObject)` Retrieve profile information from an endpoint. -- fetchClientIdentifier(urlObject) +- `async validateClientIdentifier(url)` + Check that a url meets specification requirements to be a client identifier. + +- `async fetchClientIdentifier(urlObject)` Retrieve client identifier information from an endpoint. -- fetchMicroformat(urlObject) - Retrieve all mf2 information form an endpoint. +- `async fetchMicroformat(urlObject)` + Retrieve all mf2 information from an endpoint. + +- `async fetchJSON(urlObject)` + Retrieve json from an endpoint. + +- `async redeemCode(urlObj, code, codeVerifier, clientId, redirectURI)` + Submit a code to get a profile or ticket response. + +- `async introspectToken(introspectionUrlObj, authenticationHeader, token)` + Submit a token for introspection. + +- `async deliverTicket(ticketEndpointUrlObj, resourceUrlObj, subjectUrlObj, ticket)` + Submit a ticket offer. + +- `async redeemTicket(ticket, resourceUrlObj, issuerUrlObj)` + Exchange a ticket for an access token to the given resource.