Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Open Source Twitch for Developers (github.com/algora-io)
199 points by selvan on Aug 30, 2024 | hide | past | favorite | 44 comments


Creator of Algora here, thanks for sharing! This was a pleasant surprise :) I posted about our Elixir bounties yesterday on Reddit, and I was not expecting to see it on HN front page the next day.

I've been building this since early this year. Over the past few months, developers like Daniel Roe (Nuxt.com maintainer), Chris Griffing, Andras Bacsai (Coolify.io maintainer) have been livestreaming with Algora their coding sessions, office hours, product launches, podcasts, and more.

Algora TV supports free multistreaming to Twitch, X, YouTube, custom RTMPs [1] and aggregates live comments from these platforms.

I chose to build Algora in Elixir because of a few reasons: 1) Productivity gains from using Phoenix LiveView are unparalleled as a solo developer 2) OTP is super helpful for handling complex streaming pipelines. Things like multistreaming, mirroring chat messages, capturing thumbnails etc. can fail at any time, and OTP makes it easier to build fault-tolerant processes 3) BEAM clustering allows distributing the system across multiple nodes with ease, which helps reduce latency between streamers and viewers.

As the sole maintainer of the project, I'd love to get your help with improving Algora! If you're up for contributing, I've put up a bunch of bounties [2] to prioritize some issues.

In any case, I'd love to hear from you if you have any feedback or questions!

[1]: https://algora.tv/docs/streaming/multicast

[2]: https://algora.io/org/algora/bounties


Since you asked for feedback, the first two things I noticed were:

1. The license.

2. On the home page, everyone had the X logo by their name.

For me, personally, these things combined were enough to decide to not bookmark it.


Personally X logos are a red flag for me.

I either think they're:

1. Old accounts that haven't been updated in a long time

2. Bots or fake and generated accounts

3. Conspiracy nuts


Documentation sucks. It doesn't explain what it is. Why open source Twitch? Introduction doesn't explain anything. Is it a Twitch competitor? Is it a restream competitor? ... annoying


The dependency on github is giving me pause. I think it is nice to give the option for developpers to connect with github, but local accounts should always be a possibility imho.

Also it is not clear from the readme if Tigris is a requirement or if any S3 API compatible storage can be used. It doesn't seem to be the case according to the environment variables given so I find it strange that Tigris is even mentionned.


Duly noted, we're probably going to add local accounts at some point. For the time being, limiting to GitHub auth has been really helpful to keep the platform focused on developers and combat spam.

Any S3-compatible storage should work fine! That being said it would require a lot more work to set it up as you also need to worry about caching, replication, distribution etc. For a livestreaming platform it's super important to ensure livestreams are available globally to minimize latency for viewers.

Tigris has all of this built-in, so it already behaves like a CDN. It's what we use on https://algora.tv and we wanted to make getting started as easy as possible for our contributors and anyone who's looking to self-host.


Makes sense, thank you.


Per Tigris Pricing[0]:

> While other cloud providers tax you for each GB of data transferred, we don't. At Tigris, we don't charge for regional data transfer, region-to-region data transfer, or data transfer out to the internet (egress) in the majority of use cases. However, if your bandwidth requirements are extraordinary, please reach out to us at sales@tigrisdata.com to discuss your requirements.

I wonder if a successful live video platform would count as extraordinary usage, I would assume so.

[0] https://www.tigrisdata.com/docs/pricing/


Tigris CEO and co-founder here. Unless it is in tens of PB range we don’t count it as extraordinary. And even then the goal is not to tax for bandwidth.


They seem to have partnered in the past, which sounds like Tigris is on board with Algora's usage:

> Every time Tigris partnered with Algora for live media & distribution we saw more developers try Tigris and experienced increased inbound from prospective customers.

(from a testimonial by Tigris' CEO on https://tv.algora.io/partner)


For now they havent had anyone build a successful livestreaming site but they have had some punters try so theyre happy to take the money.


That depends on what you would qualify as successful :) It’s early days but AlgoraTV is seeing a lot of success in my opinion. I am generally happy to support folks in however way I can.


Please stop directly referring to brands in your descriptions. This is not Twitch. Maybe it’s like Twitch, but it is not Twitch.

Not only is it confusing, it also gets you into hot water legally.


This isn't even close to twitch right? It's just a middle layer to add ads to the stream without it being adblockable.


You stream from your OBS directly to Algora, just like Twitch. And we let you multistream to YouTube, X, Twitch just like Restream.

The ads is a new feature, the cool thing is they don't interrupt the stream and show across all platforms.


> the cool thing is they don't interrupt the stream and show across all platforms

This is probably the wrong approach to selling this audience on an ads feature. A different approach that would be equally true (I assume) would be:

"The cool thing is that since these ads are embedded in the stream there's no tracking and no client-side JavaScript of any kind—the ads are targeted at the content, not individuals!"


I like your take here, thank you


Where did you learn this skill?


Titling this as "open source Twitch" makes me think this is somehow related to twitch. Why not just say "open source streaming platform for developers"?


>open source streaming platform

Like Netflix?

Naming the comparable known service sets the expectations straight.

But I wouldn't just it in the title for IP reasons.


"Livestreaming" is an established term for this kind of service that also naturally sets the right expectations.


No, it doesn't. There's an important difference between wording like open "source twitch" and "open source twitch-like"


To me Twitch was obviously used as a deonym.


The actual github repo has a different title: The interactive livestreaming & video sharing service for developers.


If you scroll down, but a the top it says Open source Twitch for developers


What makes it specifically for developers? Why couldn't gamers use this?


Might just be the level of support they’re interested in offering.

I’ve definitely used similar language as a kinder way to say “I have no interest in maintaining this to a degree where I think Joe Schmoe can use it, and I don’t want support tickets from people who can’t install Postgres on their own”.

Looking at the install instructions, it seems like something where you’d need to be familiar with Postgres, object storage, enough Linux to install dependencies, and enough networking to be able to do at least a cursory check for whether a stuttering or delayed stream was due to your network, the servers network, Tigris or something else entirely. That’s pretty much just gonna be IT folks


I was wondering the same, maybe the goal is more features specific to gamers? But I could see this being useful to more than just programmer streamers.


I don't think they couldn't but maybe they aren't targetting that on purpose for various reasons.


The link points to the code, but for me the more interesting part is the public instance. https://tv.algora.io/



In the fediverse, owncast is an established selfhosted solution for livestreams with chat: https://owncast.online/


Didn’t PeerTube also have some streaming functionality?

https://docs.joinpeertube.org/use/create-upload-video#publis...

I’ve used it for hosting videos only so far, but it’s a lovely piece of software.


I’ve recently been streaming decompilation on Twitch[0]. I find the intersection of gaming and tech enthusiasts nice (it’s pretty basic educational decomp and describing the mechanics of the game).

Ultimately where are people going to watch and discover? Glad to see interest in dev streaming.

0 - https://m.twitch.tv/madeupofwires/home


Great start, do you plan to implement some features that are specific to this type of content? E.g. interactive coding with viewers, text-only streams, other quality of life improvements. Because now it’s not clear what is the incentive to use it instead of Twitch (from the standpoint of content creator)


Why would I use this instead of something like streaming directly on Twitch or YouTube? Since they also bring the audience it helps to stream there.

There used to be a livecoding.tv back in the day which slowly died out so I would love to have something like this but I don't fully get why to use it.


> There used to be a livecoding.tv back in the day which slowly died out

For a bit of additional context:

https://news.ycombinator.com/item?id=10486476

Anecdotally, they cold-emailed me in 2016 "looking for cool projects developers are building", using an email address they probably scraped from Github. Not a good sign when you're resorting to spamming people to beg for content.


Wow. Thanks for sharing this. I just had no idea or might have just deleted this from my mind. Now I see why they died out. I didn't know YC was involved so much.


You may want to not have your content disappear suddently if for some reasons Twitch or Youtube decide unilateraly that they want to get rid of your account. Ditto if at some point you realise you don't want to be associated with them and want to close your account. You would still have that place you control where you can redirect people.


Most of our users multistream to Twitch, YouTube and X through Algora! We also support aggregating live chat comments from these platforms and embedding them on your screen, and more recently, livestream monetization via in-video ads


Personally I think it would be useful to have "as well as" Youtube and Twitch streams

Use the bigger established sites to find an audience, direct them to your personal stream if they want to support you without Twitch or YouTube taking a cut


I'm not sure what this is.

Is any 3rd party involved?

Is it something like restream?

Is it development content only? No games or IRL


would be interesting to have a local only instance, for use only inside an organization. Will explore if it is possibile.


What's the relation with Twitch?




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: