Linen – Make your Discord community Google-searchable
linen.dev
linen.dev
Congrats to the team, looks well done! It's a bit absurd that it's come to this but I guess that's where we're at now.
One question I had in my "to figure out" list was: how do you handle making users messages public, when they feel like they're joining something private?
Another question: do you sync deletions if a user goes back after e.g 1/3/6 months and deletes a message?
For Discord we follow deletion after a day since we are doing a nightly sync for the time being.
Privacy is one of our main priorities since I get that we're taking something that felt private into something that will be persisted on the internet. Here is a few ways we are/planning on addressing this:
* We only store profile image, user id and display name for the user so we don't keep email or personal identifiable information
* We just shipped a new feature where we can anonymize the display name so it is even less identifiable - i.e. with names like `many-ancient-parrot`, `adventurous-billowy-kangaroo`, and `benedict-cumberbatch`.
* Right now we sync everything but very soon we are shipping features where communities can only sync from the new conversations.
* Upon request we delete all the users's messages and conversations based on the user ID. We're shipping new where the community admin can delete conversations themselves in the coming weeks.
* We allow community admins to decide which channels to show or hide since some communities choose to create new channels so it is clear that the conversations going forward here are public.
I use my personal photo on Discord communities I'm involved in, so you could randomize the name but it'd still be obvious it's me.
Isn't Slack an acronym for "Searchable Log of All Communication and Knowledge"?! Then they either failed miserably at making it searchable to the point of requiring an entire new business to make it so, or I'm not seeing the point of Linen.
1. I find the posting experience on Discord far more seamless than that on a typical forum. From navigating channels to posting messages, I prefer the quicker navigation and viewing that it provides.
2. Discord servers tend to be more active than forums.
3. It fixes the gap between loads of pre-existing communities that would have been difficult to migrate over to a forum and document any sort of solutions that they provide in a searchable manner, something that even within Discord was rather difficult to accomplish.
4. You can also access loads of 'forums' now with a single account (you only need one Discord account in order to do so). A password manager makes this trivial, but the advantage that Discord has is being able to navigate seamlessly between many different servers or 'forums'.
5. I assume that it would be easier to document whatever gets put onto Linen than it would be to document Discord servers, but I'm not entirely sure whether this is truly the case.
Show HN: Linen – Make your Slack community Google-searchable - https://news.ycombinator.com/item?id=31168882 - April 2022 (57 comments)
If you think that Linen would be violating the user's rights, as opposed to Discord's, then that's a separate issue, and one that would probably come to a question of fair use and/or implied license.
Out of curiosity, do you also think public mailing list archives are (or should be) forbidden, by the same reasoning?
I think that Linen is facing considerable legal exposure risk and is taking the Uber approach of "break the law and pray that no one sets up a class action lawsuit against them for their rights violations". Discord has set up their chat service to be private, and extracting that data and making it public without each user's consent is a violating of privacy that — unless an overriding public good is served — would lead to their fair use claim being overturned.
I expect Discourse to ban their official integration for being inappropriate for the platform (their terms of service permit them freedom of judgment in that regard), and then to warn and eventually terminate _entire Discords_ when their operators use the predictable metastasized proxy Docker image to circumvent that centralized integration ban.
Email, as opposed to Discourse, would inherit the concept of "the recipient of a letter is permitted to do whatever they want with it", same as we have had with postal mail for a very long time — as email can be reasonably considered postal mail.
(Disclaimers: I am not your lawyer, this is not legal advice. I strongly advise consulting with a lawyer on the risks and uncertainty surrounding Linen. I do not consider there to be sufficient case law to be certain what the outcome of judicial proceedings for any of the above assertions would be. My theoretical opinions and predictions may or may not be upheld in a court of law.)
Discord is a collection of private chat servers that does not publish participation to any public/anonymous visitors, and does not allowing indexing by Google.
Maybe Google isn't crawling all the pages on the site? Possibly related to being an SPA?
Otherwise, I think this is a pretty cool project. I've always thought that Slack and Discord communities lack a good way to find them.
https://www.google.com/search?q=seeing+a+weird+issue+with+fl...
We built Linen on Nextjs since I wanted to server render all the content so it performs better for crawlers. But getting Google to crawl a large number of pages is tricky. It takes a while and even with a submitted sitemap Google sure takes their time.
Depending on the community after a month or two you end up seeing a few hundred pages being index by Google. Their ranking will vary based on how relevant the content is or based on some Google magic. Since I render the content that is newest on Linen it probably won't be on Google for a while.
And I also have questions about syncing: message deletions, channels changed from public-to-private, etc.
* A free one that is hosted on Linen.dev/s/communityName i.e https://www.linen.dev/s/cfml
* A paid tier where it is hosted on the customer's domain ie. https://archive.pulumi.com https://linen.prefect.io https://community.supertokens.com
Most of our communities are on our paid tier where they get the content hosted on their domain and get their own custom branding. The main benefit being they get the SEO benefits of having a bunch of organic long tail keywords for their domain.
I am still figuring pricing out but I'm testing out volume based/community size based pricing.
I elaborated a bit more on how we handle privacy in another comment. Happy to address any other questions
Do you have any plans to do it yourself?
It would be awesome if they supported Matrix - you could then archive many things via a bridge (https://matrix.org/bridges/).