Conversation
Edited 1 month ago
asking for feedback both user/hoster-side, long, boosts apreciated
Show content

(i did a similar poll a few minutes ago, but it was too vague so it's probably better if i describe things better)

SO! i have been (re-)building a self-hostable watch party platform since a while ago. you can create a room and watch things together with your friends. i'm close to releasing this soon, but i've been overthinking probably one of the "simplest" details of it... authentication and "discoverability" - would appreciate fedi's thoughts

one of the biggest complaints was that people were lazy to keep signing up to different instances to join their friends' rooms and whatnot, so i wanted to simplify this: that i was to offer a "centralized" authentication system, that self-hosted instances connect to. no need to setup different accounts and such... while not going the path a-la-Fediverse of having separate instances and their accounts federate, since i don't think it makes much sense in this context. of course, this would be open-source, so people can self-host it too, with the consequence it'd effectively split you from the network (at least with the current design i have).

given the fact that both clients and instances have to connect to said centralized system, it'd ease something else that i got asked about a
lot: instance/room discoverability. instances can register with said service, and if you want to offer it publicly, you can list yourself on a registry that the client(s) can fetch and show to the users. same thing with rooms - say you want to host a public room to showcase something, it gets listed on said service and everyone that's interested can join, without playing a whole internal discoverability game.

it includes some worries about the livelihood of the service, yes, but my intention here is to easy UX for the less "technical" both as a user and a self-hoster.

is this a good idea, or am i really overthinking it/should take another approach? i really want to get this right so i'd appreciate the feedback!

40% i'm fine with a centralized system, including simpler auth
0% a centralized system is okay, but the instance should do auth
60% this is a bad idea please don't do this
0% other (please comment!)
2
3
0
asking for feedback both user/hoster-side, long, boosts apreciated
Show content
@nay maybe it's just me, but I don't think "people are lazy" is a good argument for centralising things: everything ends up beeing built with a si gle point of failure and for what?

As for auth, tho, one option is to piggy back on the fediverse like Owncast does (so the instance of your thing sends a code over fedi that the user needs to input in your thing to confirm they own the fedi account and from.there use that as their identity)
1
0
0
asking for feedback both user/hoster-side, long, boosts apreciated
Show content

@Reiddragon

everything ends up beeing built with a si gle point of failure and for what?

yeah, this is a worry for me too… i was kinda justifying it to myself given my second idea of discoverability (which at least someone could live without that if you’re only using your own or your friends’ instances). i could also integrate auth directly as an option but that’d overcomplicate it if i do both. but then i also need something centralized for the registry… because i don’t see how i can make something federated for this without overcomplicating it much more lol

one option is to piggy back on the fediverse like Owncast does

this is something i thought about, but i don’t want to depend on fedi for this project (especially since its userbase was not the kind to use fedi to begin with) - so i need something more ā€œgenericā€ that works with other platforms/on its own.

thanks for the feedback!

2
2
0
re: asking for feedback both user/hoster-side, long, boosts apreciated
Show content

@nay what's the benefit of authentication for a user in the first place? kind of sounds like a host should just be able to generate a private URL to share, but maybe I don't understand what you're building

1
0
0
re: asking for feedback both user/hoster-side, long, boosts apreciated
Show content
@nay @Reiddragon The code could be sent over email, most people use that.

(Also, akkoma renders that post horribly, with the entire thing in one blockquote except "thanks for the feedback!" at the end. I think it's using the source misskey markdown and wants there to be an extra newline after every quote.)
1
0
1
re: asking for feedback both user/hoster-side, long, boosts apreciated
Show content

@jonah Authenticaiton is there so you have your profiles to be able to be identified, so you can have your joined rooms listed (since you join and ā€œstayā€ on them), etc. Pretty much for the sake of showing yourself.

0
2
0
re: asking for feedback both user/hoster-side, long, boosts apreciated
Show content

@noisytoot @Reiddragon ty for the info, fixed!

and I mean… my intention is to implement ā€œMagic Linksā€/codes + passkey support for authentication… but again I’ve only thought of it in the centralized variant of it

0
2
0
re: asking for feedback both user/hoster-side, long, boosts apreciated
Show content

@nay only other thing I can think of that is more generic is using email, but setting up email servers is a nightmare so Idk if you can ask people to set that up when they want to host it

0
0
1
asking for feedback both user/hoster-side, long, boosts apreciated
Show content

@nay I feel like having something like keycloak for auth would make sense here cause you could just run a centralied LDAP server which people can connect their keycloak system to it and then each instance can do their own auth while all accounts and etc are centralized. Heck you could even publish the LDAP server seperately and let people operate their own versions then in this case if they want control over it.

0
0
1
asking for feedback both user/hoster-side, long, boosts apreciated
Show content

@nay this project is relevant to my interests ☺
the centralised authentication would be optional, right?
could I host my thing with no authentication and just rely on a slightly-obscure url I can share with my friends?

1
0
0
asking for feedback both user/hoster-side, long, boosts apreciated
Show content

@dakkar the current plan is to require authentication to create rooms but allow users to join as guests (if enabled), however i could make it so you can create rooms as guests if needed

1
0
0
asking for feedback both user/hoster-side, long, boosts apreciated
Show content

@nay that sounds completely sensible
(and at worst I can always modify the code 😁)
do you have some description of this platform I can check out?

1
0
0
asking for feedback both user/hoster-side, long, boosts apreciated
Show content

@dakkar if you know Rabb.it, it is similar :)

aside of that there’s the website of my project: https://cryb.app (things have not been updated in a long time though… since this is something i’ve been working on for a bit privately until i feel ready to open-source it)

in case of any doubts, feel free to ask me!

1
0
0
asking for feedback both user/hoster-side, long, boosts apreciated
Show content

@nay aah, ok, very different from what I thought, and I’m not sure it’s what I’m looking for…

my use case: I have a video file on my local machine, with non-hardcoded subtitles, and I want half a dozen of my friends to see it play with the subtitles enabled, in sync

my currently ā€œbestā€ idea: OBS with VLC source streaming to Owncast… a bit complicated

1
0
0
asking for feedback both user/hoster-side, long, boosts apreciated
Show content

@dakkar there are syncplay options but that’d imply sharing the source video file with all of them somehow, which i believe is not an option for you. sure you could stream it via Owncast, and you could even just use ffmpeg for this instead of OBS + VLC to burn the subtitles in… it would work.

personally for that use-case when i want to watch something with my friends i just use my project lol, considering i can shove files in my jellyfin instance (which i neither want to share to everyone, nor has good/stable syncplay) or just put up a temporal http server and run mpv… i just have to share a link to the room invitation and they watch it from there. but in your case you’d need to stream your files there somehow…

a similar project to mine is https://github.com/m1k1o/neko which is ā€œsingle-roomā€ and would only require a nick and a room password to get in, but you’d also need to stream your files there

1
0
0
asking for feedback both user/hoster-side, long, boosts apreciated
Show content

@nay thanks for all the info!

0
0
1