5 ms·
Colibri – chat platform built on the AT Protocol for communities big and small
- avtar 6mo agoPlease consider adding screenshots of the UI that provide an idea of what the experience will be like without having to log in using Bluesky or other credentials.
- singpolyma3 6mo agoI assume it looks the same as literally every other chat app
- Muhammad523 6mo agoYeah. Lots of discord-like free-software(as in freedom) chat apps are spawning. I think it's clear that whichever becomes the most popular will not be about who has better code but rather about who manages to get a stronger community around their project.
- subscribed 6mo agoNash. There are always quirks and edges. Like using Bluesky itself, there's a number of viable apps for them (some better, some worse), they're all slightly different. There was a large number of Reddit apps, every single one very different.
- louisescher 6mo agoDone! Thanks for the suggestion, that's a good idea.
- avtar 6mo agoThanks for the quick fix :) Nice to see more Discord alternatives these days. A few other landing page issues if you feel like addressing them: - Attempting to navigate with the Tab key results in tab order following nav elements once, where focus indicators aren't visible, and then the same elements get iterated over again but this time focus indicators are visible. - Tab order doesn't include screenshots and jumps to the FAQ - Clicking a thumbnail shows the larger image but without any elements for closing the overlay - Pressing Esc doesn't close the overlay - No skip links on any of the pages
- louisescher 6mo agoI don't know how I can keep forgetting about keyboard users. Thanks for bringing this to my attention, I'm working on it!
- jonashus 6mo agoWhere is data stored? Bluesky? My PDS? Your PDS, for free?
- louisescher 6mo agoHi, I've just added an FAQ entry about this: https://colibri.social/faq#where-is-my-data-stored https://colibri.social/faq#where-is-my-data-stored Also, feel free to DM me (@colibri.social) on Bluesky if you want to migrate to the Colibri PDS! We do host one ourselves.
- the_axiom 6mo agoOnly my own messages are in my PDS? Or the entire chat? How is the chat displayed if messages are scattered among multiple PDSes? What about the community metadata, where is it stored?
- louisescher 6mo agoYour own messages are on your PDS. The chat, the category, community and all metadata are stored on the PDS of the person who created the community. The chat is then displayed via our app view, which keeps a live index of all messages and provides some endpoints to collect them!
- kevinak 6mo agoSo if a user is banned from their PDS and they haven't backed up their keys, the community is screwed? That seems like a pretty big flaw.
- louisescher 6mo agoHi, person behind the project here, thanks for the cross-post!
- todotask2 6mo agoYou're welcome! Cool project!
- louisescher 6mo agoTy!
- em-bee 6mo agowhere can those of us who are not on bluesky get an invite code for an account?
- louisescher 6mo agoFeel free to E-Mail me via the PDS's account: pds@colibri.social I'll send you a code!
- sensen 6mo agoThis looks neat, but should I be concerned about the permissions this is requesting for my account? Bluesky: Manage your profile, posts, likes and follows
- louisescher 6mo agoHi! We're doing that to allow you to update your profile from within the app. Not doing anything else besides that. If you have concerns, take a look at the source code: https://github.com/colibri-social/colibri.social https://github.com/colibri-social/colibri.social
- czbond 6mo agoVery interesting project. From a product uptake perspective, I could suggest that since a user is still building trust when they begin use - to only require as few permissions as needed. I'd punt that profile update requirement out personally for another method later. An example might be when a user has used your app for N sessions, or after N months.
- iamnothere 6mo agoThey should prompt the user for permission when they use a feature that requires it, explain why, and allow them to cancel if desired. Have seen this pattern used many times elsewhere.
- louisescher 6mo agoGood idea, will implement that! Maybe a button or something to refresh your permissions when/if you want to edit your profile via Colibri makes sense.
- verdverm 6mo agoIf that's all you are doing, then narrow the permission set for oauth. No need to have access to posts if you aren't touching them.
- imiric 6mo agoInteresting project, but... > BUILT ON OPEN STANDARDS. PRIVATE WHEN NEEDED. > Running a private group chat? As soon as the AT protocol supports private data, we'll work on implementing it and giving you the option to create private communities. Not exactly "private when needed" then, is it? It's disingenuous to even mention this in the marketing copy.
- louisescher 6mo agoValid point! I'll get that section removed for now and either reword it later, or re-add when the protocol supports it.
- verdverm 6mo agoThe problem for atproto will be getting a permission system that can enable enough parity with Discord that it has a competitive experience. I was working on this, taking a break from atproto, re: bluesky "leadership" who defacto decide what does and does not get into the protocol via the PDS used by 99% of users.
- isodev 6mo ago“Your data isn’t trapped on our servers” - where is it then? Who can access it? “Open social” is so much bs compressed in a couple of buzzwords.
- tjuene 6mo ago> where is it then? it might be on https://bsky.social https://bsky.social, https://npmx.dev/pds https://npmx.dev/pds or sitting next to your router in your living room in the form of a raspberry pi (https://atproto.com/guides/self-hosting https://atproto.com/guides/self-hosting)
- isodev 6mo agoBut that’s not where you want your chats now is it? E2EE? And how does it keep it all private since apparently the Bluesky bros haven't figured that part out?
- louisescher 6mo agohttps://colibri.social/faq#where-is-my-data-stored https://colibri.social/faq#where-is-my-data-stored I've just added a new FAQ entry to explain this in a bit more detail. > But that’s not where you want your chats now is it? E2EE? And how does it keep it all private since apparently the Bluesky bros haven't figured that part out? It honestly depends. Right now, Colibri is meant to function for communities that are public anyway. If you're a streamer, an open source dev community, Colibri can help you with talking to people who don't want to be locked in by big corporations. As the E2EE and private data, the Bluesky people have posted a new proposal for that only a few days ago, which I'm already thinking about how to implement: https://dholms.leaflet.pub/3mhj6bcqats2o https://dholms.leaflet.pub/3mhj6bcqats2o But, yes, for now, chats are public. Private data will hopefully be a thing soon on the network.
- eximius 6mo agoThis probably needs a bigger callout. A user who isn't familiar with ATProto doesn't even know to ask this question and the design space from its contemporaries (e.g., discord, slack, etc) suggests that chats are nominally private if folks aren't a member of the channel. It's a very cool product but you have to let people know their messages aren't private.
- iamnothere 6mo agoThanks for building this, UX is nice and should encourage people to switch from Discord. Bsky only is a bit disappointing as it is still heavily centralized. I would love to see a system like this that can also set up channels over Nostr and the Fediverse. Fragmentation is starting to become an issue with decentralized and federated social.
- louisescher 6mo agoWe've taken a look at co-supporting ActivityPub as well actually! And yeah, the fragmentation is an issue. But I honestly think we might see at lease some level of interop between these fragments in the coming years, even if it's just some parts of the protocols and specs going in the same direction.
- deleted 6mo ago[deleted]
- deleted 6mo ago[deleted]
- rvrb 6mo agoUsers in a Discord server/local community on tools like Discord naturally expect that their actions within that community are private in so far as they trust everyone in the community (including the operator) to keep it so. By using ATProto, Colibri fundamentally makes all of your communication within any community completely public to everyone on the internet. That’s fine for something like Twitter, where the product sets the expectation of such a thing. You can imagine how big of an issue this is when you try to do it in a trusted community model. Add on that Discord is used by kids who likely don’t know this and you can see why this is dangerous. I consider this not only just a liability but bordering negligence. It is fundamentally broken, at an architectural level
- em-bee 6mo agoany discord server that offers public invites is effectively public.
- eximius 6mo agoPrivate channels in public servers exist. I'm almost entirely on private servers.
- verdverm 6mo agoThis is one of the challenging aspects about defining permissioned spaces on atproto. In essence, you have a completely separate database per user (sits next to their repo) with which you can do permissioned public->private spectrum. Nesting more privacy inside another permissioned space requires breaking the typical permission walking chain, eg. in Google Docs, if you have access to a folder, you have access to the subfolders.
- eximius 6mo agoYea, and it's a protocol problem more than anything. It would not be difficult to bolt on some kind of permissioning system to a PDS, but nothing else in the system would know how to handle that.
- jFriedensreich 6mo agoIt's impossible to consider ATproto apps usable until the horrific oauth situation is fixed. It's still not possible to adjust oauth permissions to something restrictive dynamically so every app needs a new account which kind of defeats many of the interop promises, if apps even allow it (colibri requires invite code)
- verdverm 6mo agoPermission sets have existed for some time now https://atproto.com/guides/permission-sets#permission-set-design https://atproto.com/guides/permission-sets#permission-set-de...
- throwawaymobule 6mo agoThose are set by the site requesting the login though. I believe what they are referring to is custom permissions set by the person logging in, regardless of what the app itself requested. e.g. login, disable all writes, all attempted repo writes using that oauth token fail.
- verdverm 6mo agoIt sounds more like they are referring to the prior atproto transition:* scope that had no restrictions, which was horrible, re: every app needs a new account Today, apps can limit the permissions they request during login. I don't see the dynamic, assuming they mean something where during approval you can deselect options, as a horrible situation. That's something very few apps do even outside of atproto.
- jFriedensreich 6mo agoNo I am talking about users not being able to change the app permissions. App developers are not the ones to set my permissions, they can reccomend what their apps could need but any platform not giving users final say cannot be taken seriously.
- schlu 6mo agoI totally understand that words and ideas get reused. But when I see Colibri, I think rest stop on the freeway (autoestrada) here in Portugal!
- wolvoleo 6mo agoIs there something like this on top of nostr too? I'd much rather see nostr because it's truly open.
- verdverm 6mo agoDoes Nostr have private content? That's a required feature for a chat platform.
- wolvoleo 6mo agoWell it could just be E2EE'd right? That's more of a required feature IMO. PS: I'm not sure if Nostr has this but bluesky currently doesn't.
- verdverm 6mo agoKey distribution puts a limit on scalability for E2EE, eg: Signal / Telegram user limits There is an E2EE messaging system that works with atproto DIDs, based on MLS, called "germ". People who have accounts can have them associated with the Bluesky profile for easy association. They only had a iOS app last I heard, so most people cannot use it.
- kevinak 6mo agoYes. Here are some specifications that describe it: https://github.com/nostr-protocol/nips/blob/master/17.md https://github.com/nostr-protocol/nips/blob/master/17.md and https://github.com/nostr-protocol/nips/blob/master/59.md https://github.com/nostr-protocol/nips/blob/master/59.md
- kevinak 6mo agoThere is - https://flotilla.social/ https://flotilla.social/
- cmxch 6mo agoSo does it have the same hermetically sealed qualities that other atproto implementations have (BlueSky)?
- louisescher 6mo agoSorry, not quite sure what you mean when you say "hermetically sealed qualities", could you elaborate?
- ebbi 6mo agoIs there anything like this but more of a reddit style layout? I'm on a Facebook group and we're actively trying to get off of all Meta platforms, and wanted to see whether I could start up my own platform using an open source platform - but I think something like Reddit would be more suitable as opposed to a massive chat UI.
- louisescher 6mo agoHi! We've got Forum-Style channels planned, similar to Discords, would that work for you? It'd still be a single text channel, and you could have multiple of them per community.
- ebbi 6mo agoThanks for the reply! I'm not too familiar with Discords forums so will do a bit of digging
- verdverm 6mo agoThe comments are not trees like Reddit. It's more like a list of questions you click into for a thread. Basically a channel where the top level is a list of threads, has more permanence than threads in normal chat channels.
- avtar 6mo agoMaybe Lemmy without federation?
- ebbi 6mo agoThis looks very promising! Thanks for the lead.
- 11thDwarf 6mo ago[flagged]
- righthand 6mo ago> This implementation is almost entirely vibe-coded for the purpose of being able to quickly get started with development of the main application. It will be re-written in the near future to take advantage of Tap and be reworked to include all user data storage as well as any OAuth capabilities, which currently reside within the website's backend. If you are interested in helping with this, start a discussion on this repo! https://github.com/colibri-social/appview/blob/main/README.md#colibri-appview https://github.com/colibri-social/appview/blob/main/README.m...
- swampdick 6mo ago"For public private conversations" Go home guys
- gavmor 6mo agoCool, was thinking of building this myself. Glad you beat me too it. It's a nonstarter without E2EE for my use-cases, unfortunately.
- BodyCulture 6mo agoWe need more aggressive laws to prevent privacy destroying platforms. Every person who creates a website or platform that advertises any kind of private communication but does not fully encrypt user data must go to jail. This cancer needs to be stopped.
- tannhaeuser 6mo agoNot sure who the target audience for this is? ActivityPub (Mastodon etc) has already very granular permissions wrt. who to federate with, which posts to make public, edit or withdraw posts after initial creation, etc. catering to EU privacy and moral/personality rights demands. For closed group chat, there are many alternatives. Discord is after all a video chat app designed to be used during a gaming session first and foremost.
- subscribed 6mo agoSee, for you it's that, for me it's strictly text app with good notifications and messages delivery, convenient group management, etc. If i wanted video chat app I'd to for twitch.
- Orygin 6mo ago> If i wanted video chat app I'd to for twitch. Twitch barely has any semblance to what Discord offers. It's one to many, while Discord is many to many.
- hipdaddy 6mo agoUse AS2. Use AS2. Use AS2. Making decentralized social media? Use AS2. This is not chat, it’s social media with a chat UI. You should use AS2. AT is a joke invented by nontechnical people. They had 1 good idea (updatedAt and use of At) everything else was not good for decentralization. AS2 is perfect for feeds of content especially when you want to nest other content e.g. a user posted a reply to a comment on a game. AT is centralized social media with cancer, stop using it.
- Orygin 6mo agoAS2 as in Applicability Statement 2? Or Action Script 2? Edit: For the curious like myself, after more searching it seems to reference Activity Stream 2 which is a W3C standard used by ActivityPub (Mastodon, lemmy, etc)
- verdverm 6mo agoActivityPub is more of a zombie project than ATProtocol at this point. AP has plenty of problems this fresh account made to disparage omits. I'm looking forward to a new protocol that combines the best of what we have with a robust permission system from the start.
- Orygin 6mo agoSeems you wanted to respond to the OP? I was mainly inquiring about what's AS2. > AP has plenty of problems this fresh account made to disparage omits. Isn't that a problem with moderation instead? If ATProto becomes decentralized someday, it'll have the same issue
- verdverm 6mo agoATProto actually has a very good moderation design, user choice, anyone can label, and composable. Feeds are similarly well designed for federation. https://bsky.social/about/blog/03-12-2024-stackable-moderation https://bsky.social/about/blog/03-12-2024-stackable-moderati... > Seems you wanted to respond to the OP? yes
- kmfrk 6mo agoDiscord's main problem for me is that it's built around people having one and only one user, which is a huge privacy and pseudonymity mess. The only alternative that works somewhat is using the PTB version of Discord for your "alts". If this project has genuinely decent multi-user support instead of the miserable experience of Discord, I'd emphasize and promote that first over being a Discord-like, since this genuinely improves on some of the privacy issues of Discord, despite AT Proto being public. Better to distinguish the product from Discord rather than promoting how similar it is. Because of the public architecture, it's more similar to a forum board than Discord anyway, so you could also just as well give people another interface by showing the community as a conventional website. People may or may not like it, but it's basically what it practically is. One of the big issues with Discord is that it takes public knowledge like wikis and makes it private instead - and beholden to the whims of mercurial mods and admins. Information being public doesn't have to be a bad thing that way. Instead of Discord, you can give the people Discourse. :) tl;dr: AT Proto being "open" can look like a bad thing in nominally private spaces like Discord, so promoting as something more open like an open forum board rather than a closed Discord server might be more interesting and persuasive. But I'm also a forum board evangelist.