Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/ngerakines/apevents
A federated event management system
https://github.com/ngerakines/apevents
activitypub
Last synced: about 1 month ago
JSON representation
A federated event management system
- Host: GitHub
- URL: https://github.com/ngerakines/apevents
- Owner: ngerakines
- License: mit
- Created: 2022-11-22T23:31:24.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2023-03-06T04:11:12.000Z (almost 2 years ago)
- Last Synced: 2024-05-01T13:43:23.166Z (8 months ago)
- Topics: activitypub
- Language: Rust
- Homepage: https://thegem.city/tags/apevents
- Size: 228 KB
- Stars: 12
- Watchers: 4
- Forks: 0
- Open Issues: 8
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
- Codeowners: .github/CODEOWNERS
- Security: SECURITY.md
Awesome Lists containing this project
README
# apevents
***NOTICE: This project is under active development and is not ready for production.***
(ActivityPub) Events is an event management system that allows event creation and coordination across the fediverse.
Events are considered public and there is no current or planned implementation of "private" events. The server will support domain allow and deny lists, for both fediverse moderation as well as network controls, but if the site is public then events can be seen by practically anyone.
For updates and discussions, check out https://thegem.city/tags/apevents.
# Roadmap
The next milestone is [0.1.0](https://github.com/ngerakines/apevents/milestone/1).
* [ ] Event actors https://github.com/ngerakines/apevents/issues/1
* [ ] Descriptions https://github.com/ngerakines/apevents/issues/2
* [ ] Follow and unfollow actions https://github.com/ngerakines/apevents/issues/2
* [ ] @event + #discuss public posts to boost messages to event followers
* [ ] @event + #impersonate mention-only posts to have the event re-publish the message as the event without the #impersonate tag
* [ ] @event + #admin mention-only post to have the event reply with an admin link that is good for 24 hours
* [ ] Public event page that includes event details https://github.com/ngerakines/apevents/issues/3
* [ ] Event creation with @planner
* [ ] Admin page for server configuration
* [ ] Domain deny and allow functionality
* [ ] Media storage offloading to object storage## Icebox / For Discussion
* Project documentation
* Unit and integration testing
* Interop testing
* Limited NLP functionality with the @planner actor to provide helpful functionality
* Fediverse identity verification
* Home page event and place lists
* Event actor and object expiration and cleanup# Usage (abridged)
## Creating Events
1. Open up https://events.thegem.city/
2. Locate the form that says "create new event" and put in your actor reference (i.e. `@[email protected]`, `https://thegem.city/@nick` or `https://thegem.city/users/nick`)
3. Check the direct messages of the created account and follow the link to https://events.thegem.city/events/readily-splendid-mule/admin?password=abcd1234
4. Fill in the event details:
* Title - Actor display name
* Description - Actor description
* Starts at - Actor metadata "starts_at"
* Ends at - Actor metadata "ends_at"
* (optional) Location - Actor metadata "location"Constraints:
*(Some of these are arbitrary.)*
* Event titles must be under 64 unicode characters.
* Event descriptions must be under 1000 unicode characters.
* The starts_at may not be more than 30 days in the past from now.
* The ends_at may not be more than 7 days from starts_at.
* Location must be under 300 characters.## Updating events
1. Send a direct mesage to the event actor (i.e. `@[email protected]`) with the visibility "mentioned only" with the content "#admin" in the message
2. Check for a response from the event actor with a link to an admin page. That link is only good for a limited amount of time.
3. Edit any event details and configuration.## Following an event
1. From your fediverse instance, search for the actor reference (i.e. `@[email protected]`, `https://events.thegem.city/@readily-splendid-mule` or `https://events.thegem.city/users/readily-splendid-mule`)
2. Follow the event actor## RSVP
1. Send a direct message to the event actor with the message "#rsvp going" or "#rsvp not going"
2. Receive a confirmation direct message from the event actor.# License
MIT License
Copyright (c) 2022 Nick Gerakines
See also: [LICENSE](./LICENSE)