2018-01-24 08:00:59 +09:00
# activity
`go get github.com/go-fed/activity`
2018-05-31 06:48:34 +09:00
This repository supports `vgo` and is remotely verifiable.
2018-01-24 08:00:59 +09:00
This repository contains three libraries for use in your golang applications:
2018-05-31 06:48:34 +09:00
* `vocab` : An ActivityStreams Vocabulary library
* `streams` : A convenience library for the ActivityStreams Vocabulary
* `pub` : ActivityPub SocialAPI (Client-to-Server) and FederateAPI
(Server-to-Server)
2018-01-24 08:00:59 +09:00
2018-04-05 03:32:55 +09:00
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.
2018-08-20 01:39:54 +09:00
The [go-fed.org ](https://go-fed.org ) website has a tutorial. It also hosts godoc
documentation for every version of this library.
2018-01-24 08:00:59 +09:00
## Status
2018-08-20 02:00:48 +09:00
**0.2.1** ([Semantic Versioning](https://semver.org/))
2018-04-05 03:32:55 +09:00
2018-08-20 01:26:02 +09:00
An [official implementation report ](https://activitypub.rocks/implementation-report/ )
was last submitted for version **0.2.0** [here ](https://github.com/w3c/activitypub/issues/318 ).
2018-06-14 06:23:46 +09:00
2018-08-20 01:26:02 +09:00
Previous unofficial implementation reports are available in [issue #46 ](https://github.com/go-fed/activity/issues/46 ).
2018-06-14 06:23:46 +09:00
Please see CHANGELOG for changes between versions.
## Getting Started
2018-04-05 03:32:55 +09:00
2018-05-31 06:48:34 +09:00
See each subdirectory for its own README for further elaboration. The
recommended reading order is `vocab` , `streams` , and then `pub` . Others are
optional.
2018-04-05 03:32:55 +09:00
2018-06-14 06:23:46 +09:00
## How can I get help, file issues, or contribute?
Please see the CONTRIBUTING.md file!
2018-05-31 06:48:34 +09:00
## How well tested are these libraries?
2018-04-05 03:32:55 +09:00
2018-05-31 06:48:34 +09:00
I took great care to add numerous tests using examples directly from
specifications, official test repositories, and my own end-to-end tests.
2018-04-05 03:32:55 +09:00
2018-05-31 06:48:34 +09:00
## Who is using this library currently?
2018-08-20 01:20:58 +09:00
| Application | Description | Repository | Point Of Contact | Homepage |
|:-----------:|:-------------------------------------------------:|:--------------------------------------------------------------------------:|:-------------------------------------------------------------------------------------------------------------------:|:------------------------------------:|
| Anancus | Self-hosted and federated social link aggregation | [https://gitlab.com/tuxether/anancus ](https://gitlab.com/tuxether/anancus ) | [@tuxether@floss.social ](https://floss.social/@tuxether ) or [tuxether@protonmail.ch ](mailto:tuxether@protonmail.ch ) | N/A |
| Write.as | Simple, privacy-focused blogging platform | [https://github.com/writeas/Write.as ](https://github.com/writeas/Write.as ) | [@write_as@writing.exchange ](https://writing.exchange/@write_as ) or [hello@write.as ](mailto:hello@write.as ) | [https://write.as ](https://write.as ) |
2018-05-31 06:48:34 +09:00
## How do I use these libraries?
2018-04-05 03:32:55 +09:00
2018-08-20 01:20:58 +09:00
There is a [tutorial ](https://go-fed.org/tutorial ) available at
[https://go-fed.org ](https://go-fed.org ).
2018-05-31 06:48:34 +09:00
Please see each subdirectory for its own README for further elaboration. The
recommended reading order is `vocab` , `streams` , and then `pub` . Others are
optional.
2018-04-05 03:32:55 +09:00
2018-05-31 06:48:34 +09:00
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
2018-04-05 03:32:55 +09:00
## FAQ
2018-06-14 06:23:46 +09:00
Please see the CONTRIBUTING.md file!
2018-01-24 08:00:59 +09:00
## Useful References
* [ActivityPub Specification ](https://www.w3.org/TR/activitypub )
* [ActivityPub GitHub Repo ](https://github.com/w3c/activitypub )
* [ActivityStreams Core Specification ](https://www.w3.org/TR/activitystreams-core )
* [ActivityStreams Vocabulary Specification ](https://www.w3.org/TR/activitystreams-vocabulary )
* [ActivityStreams GitHub Repo ](https://github.com/w3c/activitystreams )
## 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.