I've been building a Facebook Events style event organizing system for the Fediverse. It's based on the simple, open source, privacy-respecting event organizing tool https://gath.io

The attached video is a work-in-progress preview and shows compatibility with Mastodon. My hope is to get it working with lots of software, including stuff like Friendica that supports events and calendars.

Check out more at my Patreon: https://www.patreon.com/posts/organizing-on-32729070

Gathio

An easier, quicker, and much less privacy-invading way to make and share events

Also on the todo list is to add an Events tab to Hometown that keeps track of events you've RSVPed to. (For federation nerds: this will be driven by ActivityPub `Event` activities sent to a user's inbox after they've successfully RSVPed.)
omg this is cool, I only had to change one line of code and now my gath fork provides verrrry minimal Friendica compatibility! (the end time is the same as the start time, probably a bug on my end, but still, this is neat to see this working "for free" after implementing Event activities)
@@darius I'm currently reworking Zap to send events as Invite/Event instead of Create/Event per the discussion yesterday. We'll still support implicit invites if we get a Create/Event from elsewhere but will stop generating them. I'm probably not going to support the target property on Invite unless this causes a serious problem with other projects. If you receive the invite, you're invited.

@mike Okay, cool. Do you send out an Accept/Event when I click the affirmative RSVP button on an Event I've received? I am not seeing anything POSTed to the inbox of the actor on my end when I RSVP from Friendica.

In here I see a sendContactAccept but not a sendEventAccept, for example https://github.com/friendica/friendica/blob/a8fa7e5187cbe24c2d69ed09cdbbe87e5fe5b8ef/src/Protocol/ActivityPub/Transmitter.php

friendica/friendica

Friendica Communications Platform. Contribute to friendica/friendica development by creating an account on GitHub.

@@darius I couldn't really tell you what Friendica is doing. I left that project in 2012 and some of the community members picked it up and kept it going. We have some very strong differences of opinion about privacy and consequently aren't on the best speaking terms.

Zap and Hubzilla send Accept/Event at this moment in time. Once my testing is complete Zap will send Accept/{Invite/Event} and eventually I'll create a pull request for Hubzilla to do the same.
@mike okay great! Is there a Zap instance that I can create an account on? I signed up for hubzilla but could not figure out how to send a follow request to an AP account (I'll read docs later this was just my initial attempt)
@@darius I think zap.dog has the latest released code and open registrations. ActivityPub is built-in.

Hubzilla requires you to add the ActivityPub app from the hamburger menu if you want to use that protocol and not all sites make that plugin available. It can be difficult to find a public site that does. hub.libranet.de  and hub.disroot.org do iiirc.

For both Zap and Hubzilla, there's a 'Connections' app in the hamburger menu. On that page is a box to add a new connection. Either a webfinger address or URL are accepted. There are other methods, but this is the most straight forward.
.
@mike I haven't successfully found a place to test from for zap or hubzilla, but I did get affirmative RSVP working with Friendica, which is using the same federation model you mention (Accept/Event). Can you try following @V_Yyi5YB7 -- you'll get an Event in your feed that you can RSVP "yes" to, and it should after a few minutes be reflected on the page. (If you go to https://events.tinysubversions.com/V_Yyi5YB7 you'll see that's a Friendica account that has RSVPed there)
@@darius @Yet another event okay 3 Following, but probably need some fresh content like a comment or another rsvp to arrive in order to retroactively pull the parent activity; since I wasn't following when it first was published. The "fetch their existing timeline on connect" feature hasn't yet been upgraded to work with AP feeds.
@mike @V_Yyi5YB7 sure but *on follow* it should send an Event to your inbox
@darius so is this test already using the new event tag that just got merged into masto?
@liaizon Not yet, will probably add it tomorrow
@@liaizon @@darius Got a link so I can check compat with Zap ? We should be OK with HomeTown's events and RSVPs  but I hadn't heard anything about an event tag.
@mike @darius this is what I was referring to, tag was the wrong word to use. https://github.com/tootsuite/mastodon/pull/12637
Add Event activity-type support by tcitworld · Pull Request #12637 · tootsuite/mastodon

This adds support for Event AP type in Mastodon. Events are converted into toots by taking their title (AS name) and their URL (AP ID). Event picture is also brought in if available. Testable by fe...

@darius @mobilizon @mike maybe have a look at Mobilizon too? Activity pub events tool currently in development by french non-profit Framasoft
@darius sorry, spoke too soon... Arriving at this thread from a different post, I see you already commented on the differences. Threading on Mastodon really confuses me 😞
@darius any closer in this movement?
I should probably update this somehow to say "by the way this has been working for years now and available at https://gath.io " but I am so. so. busy this week
Gathio

An easier, quicker, and much less privacy-invading way to make and share events

@darius This is really neat, thanks
@darius excited to hear you are talking to devs to make this feature go mainline gath!
@darius *strips tshirt and starts running in circles wildly*
@darius And how will it differ from #Mobilizon?
@bortzmeyer Different federation model. My primary Actor is for an individual event, whereas Mobilizon has users who "own" events. I want people to be able to follow events rather than humans who own many events.
@darius oh my gosh, i saw this my first week on fedi but didn't save it and I've been looking for it ever since!

@darius Great! Go go go! Federated events are critical missing infrastructure right now, I can't wait for solutions.

Will be good to have some friendly, fediversly coopetition with Mobilizon and any others :)

@darius awesome stuff! you should also checkout @mobilizon
@darius this looks great - looking forward to trying it out

@darius

@sinacarnelious

فکر کنم روی این میتونی کار کنی
همون چیزی بود که میخواستی

@darius
Will it be compatible with @mobilizon ? Would be nice if both tools could share the same schemas etc?
@darius There is also @GetTogetherComm which seems to be working on federated events. And the general discussion: https://socialhub.activitypub.rocks/t/federated-events/305
Federated Events

LONG story SHORT: I think it’s time to federate events! 😃 🌴 CURRENT SITUATION we have a great decentralised events platform “Meetup like” called GetTogether (Python) https://gettogether.community someone started already to write a standalone AP Python library https://github.com/dsblank/activitypub things seems a bit stuck… 😛 https://github.com/GetTogetherComm/GetTogether/issues/60 FEDEVENT somebody already created an experimental FedEvent but no sou...

SocialHub
This is very cool! Nice overloading of polls for RSVP buttons!

I've been working on events too, and just launched https://events.indieweb.org last week! It federates via Webmention, including adding photos, comments and blog posts via Webmention replies. I've been thinking about whether and how to add ActivityPub to it and this is giving me some ideas now!
IndieWeb Events | IndieWeb Events

@aaronpk Oh cool! Yeah, tbh my main issue with most events solutions out there is that their federation models seem really weird to me. It was important for me to make an event (lower case) into an Actor that people can follow, and then it can send out Events. Other implementations take the AS2 vocab spec too literally and make human users their Actors, and you follow a human and they emit Events that they "own" over time
I agree with you on that! I think this is also a similar issue I've seen on how we've been doing "indie events", where an individual person posts an event on their own website. (We have at least 6 years of examples of this at this point.) But I've always thought of events as being their own thing even if they're hosted by a specific person. So this is my attempt at flipping that around and making events a first-class entity.
@aaronpk we should probably do our once-every-two-years thing where we actually meet up and talk about this stuff since we live in the same city huh
😂 has it been that long! Yes we definitely should! I'm around this week!
@darius Interesting. Any thoughts about mobilizon.org?
@darius @nolan good stuff. I could see setting this up at PDX.social.
@foozmeat @nolan Yeah! gath.io is remarkably easy to administer, too. One thing I want to add to it is the ability to set it up so it only allows users who auth from YOUR mastodon/oauth domain to create events. That way you're only committed to moderating events created by the users you already have
@darius What's the difference with GetTogether? (https://gettogether.community/)
Get Together

@thinkMoult I haven't evaluated that so I can't say. I think my federation model is pretty different though,
for example RSVP via direct message is not something I've seen before

@darius Always good to have some variation in the community :) I've seen RSVP'ing via messages / emails before, though.

@thinkMoult

@darius Very cool! Have you looked into @mobilizon ? It seems like they're also building something along those lines; maybe both projects could eventually be compatible?
@sean @mobilizon Yes. My goal is for maximum compatibility, though our federation models are different (my events have their own Actors that emit Events, theirs is a more traditional user-is-the-Actor afaict)

@darius

We 😍 gath.io ! We've used this in a few events.

@darius great news, thanks for working on that!
Quick question: what happens to events you follow after they end? Do they increasingly clutter your follow list?
@stragu Gath deletes events two weeks after they end, I am telling it to inform followers that the account itself has been deleted as well so if your AP server honors those deletes then you should lose the follow as well
@darius excellent! Thank you for the reply, and for your work! :)
@darius yes!!! This is really the last domino for corporate social media. As soon as I have some spare money, I will definitely contribute. I love seeing the internet becoming ours again. ❤️❤️❤️
@darius isn't privacy, open source and Facebook all in the same sentence an oxymoron?

Hi @darius I just tried to test events.friend.camp but it tells me I need an account on friend.camp. When I clicked the login button under that message, it took me to a login page on friend.camp. I clicked on 'sign up' but it redirected me to:
https://joinmastodon.org/#getting-started

When I navigate directly to friend.camp, sign-ups there appear to be closed. Is it possible set up an event on a Gath instance using an account on another Mastodon instance?

Mastodon

Mastodon is an open source decentralized social network - by the people for the people. Join the federation and take back control of your social media!

@darius This is great! The whole reason I joined FB, again was events.. finally!
@darius hey Darius is there an ActivityStreams like vocabulary for events? We also produce events from app.whatscookin.us and would love to output them in a friendly schema