go-ucan Logo

go-ucan

UCAN v1.0.0-rc.1 GitHub go.mod Go version Build Status Apache 2.0 License MIT License Docs Discord

This is a go library to help the next generation of web and decentralized applications make use of UCANs in their authorization flows. ## Specifications The UCAN specification is separated in multiple sub-spec: - [Main specification](https://github.com/ucan-wg/spec) - [Delegation](https://github.com/ucan-wg/delegation/tree/v1_ipld) - [Invocation](https://github.com/ucan-wg/invocation) Not implemented yet: - [Revocation](https://github.com/ucan-wg/revocation/tree/first-draft) - [Promise](https://github.com/ucan-wg/promise/tree/v1-rc1) ## Status `go-ucan` currently support the required parts of the UCAN specification: the main specification, delegation and invocation. Besides that, `go-ucan` also includes: - a simplified [DID](https://www.w3.org/TR/did-core/) and [did-key](https://w3c-ccg.github.io/did-method-key/) implementation - a [token container](https://github.com/ucan-wg/go-ucan/tree/v1/pkg/container) with CBOR and CAR format, to package and carry tokens together ## Getting Help For usage questions, usecases, or issues reach out to us in our `go-ucan` [Discord channel](https://discord.gg/3EHEQ6M8BC). We would be happy to try to answer your question or try opening a new issue on Github. ## License This project is licensed under the double license [Apache 2.0 + MIT](https://github.com/ucan-wg/go-ucan/blob/main/LICENSE.md).