Hacker News new | past | comments | ask | show | jobs | submit login
Show HN: Gurlic – Free and Open Communities (gurlic.com)
108 points by SubGenius on Oct 5, 2020 | hide | past | favorite | 45 comments



Hey! I made an account — this seems like an awesome idea, and I really like your vision. It seems like this format will really appeal to hacker-types with the idea for eventual federated + custom domain communities that can interact with each other. It’s similar to my own idea of an ideal social media network.

Some of the structure seems a bit confusing though as I look around. How can I create a new community or a custom domain? I don’t see the option anywhere. I also can’t find a way to post to any communities besides my own username.

If it weren’t for your comment in this post explaining everything, I’d be really lost. I’d recommend a page with a series of graphics that shows the basic idea of how everything works together. I also noticed that most of the static links on a subdomain page don’t work (ex. the “About” links at the bottom of the page).

Overall, really great job so far and I can’t wait to see what else comes of this! I’ll definitely be looking out for when you open-source the project, at least for better understanding, and maybe to contribute too! :)

Edit:

Ah okay, seems like you need to be following a community to be able to post to it. That makes sense.

It also seems like maybe I need to create multiple accounts to create multiple communities? Each account is its own community? So if I wanted to make a community for “golang” for example, I’d have to make an account named “golang”... Then that account owns itself as a community? That’s my best guess!


Hey. Yup, it is a bit confusing, I'm taking all the feedback here and making UI/structure changes. And I'll definitely write more in the about page. I'm aware of the broken links too...

I'm guessing you made an anonymous account? Those can only post on communities which allow anonymous posts. Right now, only email-verified accounts can create communities and add domains, only to avoid namespace-squatting and spam really.

Thanks, I'll let you know when I free up the code. :)


It’s actually not an anonymous account, I just can’t find the links anywhere for creating a community! I did just edit the above post to say that I figured out that you must follow a community to post to it. And thanks for getting back! :)


Here it is: https://gurlic.com/create

Also no, your account username is your account username. You choose a slug/username for your community when you create one, it doesn't need another account.


Is there a place we can signup to be notified when you open the code? Loving what you are doing here!


Thanks! https://gurlic.com/gurlic is site-related updates, so I'll post it there. :)


This is incredible work! It looks snazzy and yet is very light - the frontpage only took 300kb to load (compare that to new reddit, lol). I really love the alt text for NSFW posts: https://i.imgur.com/2tcHsGY.png

How are you planning to do moderation? You seem to be going with a reddit-style "the creator of the subreddit moderates" system - how are you planning to deal with the pitfalls of that, like power users moderating thousands of communities, mod abuse and accusations thereof, etc.?


Thanks!

I'm not completely sure yet, and haven't given it much thought. But I suppose there will be a limit on the number of communities/publications one can own. There definitely ought to be a mechanism to cut down on power user abuse.

I'm happy to hear thoughts/ideas/advice on this!


You're also going to have to deal with cases where the creator of a sub-community fails to do their job as a moderator (or actively works against it). In the limiting case, if you get a DMCA takedown notice, get a GDPR notice, get a C&D, discover illicit materials of other types, discover that people are using your site to plan crimes/attacks/etc, or any number of other things, you're still responsible for that.


Ah yes, those are things I need to think about eventually. Thanks for the advice.


It's worth noting that emergent communities like this devolve into fascism pretty quickly (as more forums, reddit, & fb groups have proven) so you might want to think about this / bring in someone who is an expert on community management.


You're right, it's not something I want to put off till it's too late. Thanks for the advice!


Definitely look carefully at the absolute worst that can be found on the Internet, and the worst that sites with user-submitted content have to deal with, and decide in advance what you do and don't want to support. Anything you don't want to say "yeah, I'd be completely fine hosting that without hesitation" about, you should think about now, and put in corresponding policies now.

Having policies in advance means people will just go elsewhere. Trying to add such policies later, when you have existing users, will be much harder. You're likely to want to draw that line somewhere; better to draw it in advance.

(I've dealt with user-generated content before; please feel free to reach out privately if you'd like to talk about it further.)


This is amazing to see, do you have the code source available to read? if not, I understand, but I would be curious what programming language you wrote all this in.

Oh and, before I sign up I should ask if you plan to monetize this via subscriptions or similar so you don't have to vanish on us if you don't want to.


I hope to open up the code very soon.

The backend database-layer/logic is in Go/grpc. The shortlink server is in Rust. The frontend is static Go templates, vanilla JS, Svelte and some Vue.

I don't think I'll vanish, but good thought!


The website is super fast! Great engineering. Are you the only developer on this?


maybe that's the power of server-side rendering and svelte


Thanks, I am!


Hi HN.

I started to build Gurlic as a way to post my thoughts.

Here are a few examples: https://gurlic.com/bob/dont-laugh https://gurlic.com/plato/ion?theme=minimal https://gurlic.com/homer/the-odyssey-book-i?theme=pudding https://gurlic.com/raw/next-stop-immortality?theme=naked

There is a minimal editor for writing longform/articles, with a fair bit of customization, theme options, including custom CSS, adding co-authors etc.

User can also post short posts including media, attachments, reviews, polls and so on. Some examples:

https://gurlic.com/raw/post/320442840570134533 https://gurlic.com/bob/post/lf1Gb5wFYb6A https://gurlic.com/davinci/post/hjWoniPoYNDK etc...

These posts are brought together in profiles which can be customized: https://gurlic.com/raw https://gurlic.com/bob https://gurlic.com/haxor

Profiles can be at subdomains too: https://raw.gurlic.com

Or domains: https://bob.monster

Communities -----------

Gurlic has a thing called a "bread" which is a collection of posts. The most common type of bread is a community, which is sort of like a subreddit or a forum. These are fairly minimal now, but have customization options, mods/admins and so on. Here are a few examples:

https://gurlic.com/music https://gurlic.com/programming https://gurlic.com/space

Communities can be nested:

https://gurlic.com/music/jazz https://gurlic.com/music/jazz/fusion

They can be found at subdomains too, like so: https://music.gurlic.com https://music.gurlic.com/jazz https://music.gurlic.com/jazz/fusion

Or domains: https://gurlic.space

Galleries ---------

A gallery is just another type of bread, but accepts image posts only. Like this:

https://gurlic.com/art

They can be at subdomains too: https://art.gurlic.com

Or domains: https://gurlic.art

Publications ------------

Publications are yet another type of bread. These are for longform posts only. Here's one: https://gurlic.com/classics

And a post from it: https://gurlic.com/classics/the-iliad-book-ii

These can be at domains too: https://classics.wtf

And a post: https://classics.wtf/the-odyssey-book-iii

Nested breads don't have to be the same type, so you could have a gallery under a community, or some other combination. Like this: https://gurlic.com/art/discussion https://gurlic.com/programming/memes

Other stuff -----------

Most posts can be tagged, marked NSFW, users can be @mentioned, there are #hashtags, all the usual modern amenities. Profiles and communities have RSS too, or should, last I checked.

Work in progress ----------------

I'm hoping to integrate matrix into the code as soon as I find more time to read/learn it and things like dendrite and hydrogen are stable enough. Until then, signed up users get a @username:gurlic.com account and there's a self-hosted version of the Riot/Element as https://gurlic.com/chat that I havent' had the time to play with yet. I'm guessing the usual matrix clients on desktop/phone can be used, but I haven't checked.

Short term goals are to build up a small community of users, fix things that are broken, and make the code free. I'm not a programmer, so all of this took a lot of yahoo searches. I'd be happy to hear feedback and advice.

Longer term goals would be to have activitypub or some kind of way to have federated interaction between domains. But this needs more thought and probably someone smarter than me to look into it.

Most of the backend is Go/grpc for the db/logic, and rust for the shortlink server. The frontend is a combination of Go templates, vanilla JS, Svelte, and Vue.

There is a ton of other stuff I'm leaving out for brevity. Some of them may come to me in the comments if anybody has a question.

Thanks


“I'm not a programmer”

Surely this is past tense now?


Great work! I like the bread and nesting idea!

At this point I feel that every new "social platform" should greet me with a whitepaper. "How is this different from Reddit? What are functionality goals?". Your post right here is great at explaining this but maybe this should be included somewhere on the website itself?


Thanks! You're right, I think I'll work this into an "introducing" blog post soon.


I love the theming options, nested communities, and your goal to federate the network in the future!

The concept of having different types of "breads" based on things like content type and length is intriguing.

One small feature request: It looks like this may be in progress because I noticed a URL on user profiles, but I'd love to see RSS for each user and community.


Thanks!

Users already have feeds at https://gurlic.com/bob/feed, although I didn't complete it I think..

I plan to work on RSS for communities in the coming days!


Got the code through email, clicked the link.

uMatrix blocked it. Disabled it.

Then uBlock Origin blocked it. Disabled that.

Still blocked, so disabled NextDNS.

Then it worked.

Just a FYI.


Thanks for the heads up. I'm using Postmark for transactional email. I think this is probably something at their end. I'll open a ticket with them.


So.. I can't get to the about page because when I scroll down to see the links in the footer, it loads more content :)


Ah yes, I should see to that. Maybe move it to the header, or have a manual "load more posts" button instead. Thanks. :)


I like autoload, have you thought of maybe a floating/fixed footer that's always there no-matter the scroll...


Manual load would be awesome.


The login button doesn't work when using subdomains (raw.gurlic.com), just thought I'd let you know. It should be a static https://gurlic.com/login rather than using a relative path.


Thanks for letting me know!


i really like the content and simplicity of the site, looking forward to exploring more of the features :)

one bug that's stood out with videos .. if i pause/stop/finish a video and scroll until new content loads, it reloads the video(s) further up the page and they start playing in the background, forcing me to scroll all the way up to stop them. a minor annoyance but i wanted to point it out.

in addition to preventing this reload from restarting videos, it would be cool if videos im watching pop out to the bottom right (like many news sites do) as i scroll so i "take it with me" while i browse other content


Thanks. I'll take a look!


Your principle said "Content must be exposed via direct and friendly URLs" so I suppose the url of a post will be using title, not (just) post id.

Edit: turn out some post does have title in the url


Great work. Your design is nice. But if I may give one critique. Please add a way for users to reach the footer, it becomes silly to reach it when you have endless scroll. Either put the links in footer somewhere else and remove the need of the footer or stop the auto load after sometime and give a button for user to load more. so that they can find the footer and know more about your website.


really? trying to scroll faster than the infinite scroll JS can trigger is my favorite in browser game!


Thanks for the feedback!


super cool. I'm reading and checking the website.

Are creating API for posting is in your timeline? Is black theme?

wonderful job


Thanks! Yeah, an API is in the works. And design changes too, along with a dark theme.


Padding on mobile is gigantic


I'll take a look at tweaking various design things soon, especially on mobile. Thanks!


My thought exactly ... and I am on PC.


looks like reddit, conceptually


It is like a redesigned reddit with most of the features missing and doesn't recognize dark mode by default.




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

Search: