Go to file
Cory Slep 2aa074e2a2 Fix typos in README 2018-05-30 23:58:05 +02:00
deliverer Update all the READMEs 2018-05-30 23:48:34 +02:00
pub Fix typos in README 2018-05-30 23:58:05 +02:00
streams Update all the READMEs 2018-05-30 23:48:34 +02:00
tools Update all the READMEs 2018-05-30 23:48:34 +02:00
vocab Update all the READMEs 2018-05-30 23:48:34 +02:00
LICENSE Initial commit 2018-01-23 22:53:17 +01:00
README.md Update all the READMEs 2018-05-30 23:48:34 +02:00
go.mod Add go.mod and go.modverify for vgo 2018-05-30 21:44:17 +02:00
go.modverify Add go.mod and go.modverify for vgo 2018-05-30 21:44:17 +02:00

README.md

activity

go get github.com/go-fed/activity

This repository supports vgo and is remotely verifiable.

This repository contains three libraries for use in your golang applications:

  • vocab: An ActivityStreams Vocabulary library
  • streams: A convenience library for the ActivityStreams Vocabulary
  • pub: ActivityPub SocialAPI (Client-to-Server) and FederateAPI (Server-to-Server)

This library is biased. It forgoes understanding JSON-LD in exchange for static typing. It provides a large amount of default behavior to let Social, Federated, or both kinds of ActivityPub applications just work.

Status

Version 0.1.0 of this library is ready for use.

There is not an implementation report available... yet!

See each subdirectory for its own README for further elaboration. The recommended reading order is vocab, streams, and then pub. Others are optional.

How well tested are these libraries?

I took great care to add numerous tests using examples directly from specifications, official test repositories, and my own end-to-end tests.

Who is using this library currently?

No one. Please let me know if you are using it!

How do I use these libraries?

Please see each subdirectory for its own README for further elaboration. The recommended reading order is vocab, streams, and then pub. Others are optional.

Passing familiarity with ActivityStreams and ActivityPub is recommended.

Other Libraries

  • tools - Code generation wizardry and ActivityPub-spec-as-data.
  • deliverer - Provides an asynchronous Deliverer for use with the pub lib

FAQ

Why does compilation take so long?

The vocab and streams packages are code generated on order of hundreds of thousands to a million lines long. If using Go 1.9 or before, use go install or go build -i to cache the build artifacts and do incremental builds.

Useful References

Thanks

I would like to thank those that have worked hard to create the technologies and standards that created the opportunity to implement this suite of libraries.