6 ms·
Hey HN, I’m the author, Haven has been my side project for a little while. The core idea is that we should be able to make it easy for anyone to host their ow
by mawise 6y ago
Hey HN,
I’m the author, Haven has been my side project for a little while. The core idea is that we should be able to make it easy for anyone to host their own private webpage as an alternative to centralized social media.
A lot of the decentralized community seems to have chosen federated models as the solution to “self-hosting is hard”. I’m trying something different. With core web technologies as the foundation, my mom or my wife’s grandmother can visit my site with any web browser and I’m still able to exclude the rest of the world. For technical people, self-hosting is made easy with a one-line AWS deployment script, and an install script for the Raspberry Pi Zero W. I’d like less-technical people to be able to use this too so I’m exploring providing paid hosting as a service.
I think of Haven as a Facebook-alternative, but probably not a Twitter alternative. I see Facebook as selling itself more as “stay in touch with your friends and family” where Twitter is more about “see what interesting people are saying”. The latter has discovery as a core component. With Haven everything is private so discovery wouldn’t make any sense.
There’s nothing new here in terms of technology--server-side rendered web pages using Ruby on Rails, no javascript frameworks, RSS using HTTP basic auth. But also no analytics libraries or ad-tracking. Pages are lightweight and load really fast. I’ve even provided a limited ability to add custom CSS so you can really make your page your own.
I would love any feedback you want to share. Both from a technical or installation side, feedback on the public webpage, as well as thoughts on communities that might be interested to learn about Haven.
Thank you!
- oneeyedpigeon 6y agoHow do you handle RSS using HTTP basic auth? Do RSS feeders have support for basic auth built in, or is that via embedding the username and password in the url?
- mawise 6y agoI embed username and password in the URL; each user gets their own dedicated RSS Url. Support for this among feed readers is admittedly spotty, for example Inoreader requires you to be on a paid plan and Feedly doesn't support it. If there's traction/interest I plan to build a lightweight feed reader right into Haven.
- llarsson 6y agoCould TinyRSS or whatever it's called help there?
- softwaredoug 6y agoWow neat! I do something similar with Jekyll for family photos. I have thought a lot about “private social media”. My core requirements sound similar to yours: - It should be able to easily upload photos and videos from my phone - everything is link-private, not on Google. - it has to be very easy for the least tech savvy to view photos/videos. Needs to work on many devices, even old browsers on older PCs out there. Possibly even to the point of printing and mailing people the images. - photos/videos need to be long-lived, I want to view these 30 years from now - space for kids to post messages to their family. Family can respond easily - I own everything and grant no rights to a giant mega Corp - it should be possible to notify family members via email when new content is posted. I don’t have all those, but these are my ideal.
- forgotmypw17 6y agoi,m working on a project which hits all your points, including compatibility back to netscape 2.0 and ie 3.0.
- newswasboring 6y agoI find it curious why you are supporting such old browsers. Apart from "its cool" is there any market reason for it? Like are there really people out there using netscape 2.0? Or is it a side effect of your minimal technology? But that sounds limiting unnecessarily, you know?
- random_kris 6y agoI think that poster was being sarcastic
- forgotmypw17 6y agono, i was not being sarcastic, and i have the screenshots and demo videos to prove it.
- forgotmypw17 6y ago
- watmough 6y agoTiny bug: Under Features > RSS, the bottom of the page still mentions Simpleblog instead of Haven.
- mawise 6y agoThank you!
- detritus 6y agoSmall typo on your hosting page > For these reasons we're offing to host a Haven for you
- mawise 6y agoThank you!
- 1970-01-01 6y agoThis seems like an oxymoron. What is your definition of a "private" website and what are the technical controls Haven implements that make it so?
- newswasboring 6y agoI have read the site and some comments here. First, your site does not explain well what do you mean by private blog which is shared. From the comments I understood that you have to create accounts for people who you want to view some content. I am guessing that would give them either a email/password or some type of secure link. If its the former I would definitely find it tedious, and if its the latter I would like to know how are you securing this link.
- judge2020 6y agoMagic links are fairly common (slack does them), although some people have a bad habit of forwarding emails which can be considered a security issue if links work multiple times.
- newswasboring 6y agoSo if you are encouraging people to put there private photos which they want to share, and it seems like your website is claiming some privacy, shouldn't you address that somewhere on the site? Yeah, but first, make it clear that is what will happen. Because honestly, there is no way a non technical person will infer this model from the site.
- distantsounds 6y agoCan we maybe get an example of a running instance somewhere? There isn't even a screenshot of the UI on the home page, just a bunch of marketing clipart. And that one minute video only shows cropped screenshots.
- krmmalik 6y agoIt would be nice to have some sort of viewership stats. You've come at a brilliant time with a solution like this just as my facebook following is growing but so is my fear that they could delete my account anytime for any arbitrary reason. Twitter just isn't conducive to longform content and not everyone is a pro with threads so this is an idea solution, but seeing how many people liked a post, commented on it etc helps with the feedback loop. I realise you're doing this primarily for people to share personal content, but there's plenty of people out there that want to share personal thoughts to a large part of the world but just don't want to get censored by FB and your solution could work well for them.
- freedomben 6y ago> I realise you're doing this primarily for people to share personal content, but there's plenty of people out there that want to share personal thoughts to a large part of the world but just don't want to get censored by FB and your solution could work well for them. It's probably worth asking OP what their position on censorship is before suggesting this. It's shocking to me, but many in the tech community are very pro censorship (though they will call it "moderation" since it's not happening to them). Also if a customer of OP's got big enough and was controversial enough, AWS could threaten their account if they don't terminate that user's pages. So even if OP is a free speech absolutist, it still may not be a solution to the problem of big tech censorship.
- montroser 6y agoAnyone can spin up a website for negligible cost and put in place whatever legal content they so choose. If government interferes with that, then you have a claim to censorship. Short of that though -- if a private company like Facebook or Twitter declines to host your content, that is entirely their right. It's not a public utility. Free speech means you can say whatever you like. It doesn't mean you have a right to a platform and an audience.
- nomdep 6y ago> Anyone can spin up a website for negligible cost and put in place whatever legal content they so choose. And host it where exactly?
- wintermutestwin 6y agoMy suggestion: add a "circles of trust" feature, where you categorize your users into different levels like: acquaintance, co-worker, friend, family, special friends. Each post would have a simple bullseye icon to select how far in to the circle of trust you must be to see the post.
- doggosphere 6y agoGoogle Plus circles
- Jtsummers 6y agoThat was the feature I loved about Google Plus, I used it extensively when the service was growing. But no one else went to it regularly enough. CS Friends, Video Game Friends, RPG Friends, Soccer Buddies, Family, Immediate Family, Colleagues (several for several different jobs). I could easily post things across circles that would appeal to that circle. Vacation photos go to family and some friends, most don't care (or need to see it). My nerdy tabletop RPG posts went to those friends who cared about it. CS/programming topics went to those friends who cared about it.
- SCNP 6y agoYou just made me realize that this is implemented in Discord but very poorly. I have difficulty deciding where I should post a meme to get it to the people that will like it. Maybe I'm just on too many Discord servers...
- Jtsummers 6y agoWell, the other problem with Discord is that people have to opt-in to the groupings. Circles were publisher driven. If you were in my CS Friends circle, that was just where I categorized you. It was not akin to a FB group or a Discord server. In those, you have to accept some kind of invitation into the grouping, and you're made to communicate with everyone in the group/server. Circles were one way, from me to the circle. For a circle member to publish to all the same people they'd need to be connected to all of them directly in G+ and create an identical circle. This is the same issue as group messaging in most instant message type systems (including SMS/MMS). It's forcing a full connection between all participants, when really we may only want a fan-out structure. I haven't used it much (not as many people on it in my social circles) but WhatsApp's broadcast lists are like G+ circles in this regard.
- bovermyer 6y agoThe only bit of feedback I'll offer at the moment, having not yet seen Haven in action, is regarding the website. Have a designer give the site a distinctive visual identity, including a logo. Once it's ready, expand that visual identity into the Haven application itself. At the moment, the site feels a bit generic. That's not meant as a slight; just an observation.
- didibus 6y agoHow is it secured and made private?
- cratermoon 6y agoFound the code. Looks like basic auth. And, I can't find any password hashing -- are they being stored in the clear? Also the author checked in a credentials and a master key to github
- hanniabu 6y agoYikes, huge red flags....
- mawise 6y agoI'm using Rails Devise[1] for user auth, and http basic auth for RSS. RSS Basic auth credentials are always auto-generated, and don't give access to anything other than fetching the RSS feed. Rails uses the "master key" to let you check in encrypted database credentials. I don't use that but Rails still requires a key for deployment--so I just checked in a key. Rails is really designed for a codebase that matches to a single deployment so this is a bit of a workaround. [1] https://github.com/heartcombo/devise https://github.com/heartcombo/devise
- cratermoon 6y ago> I don't use that but Rails still requires a key for deployment--so I just checked in a key It's safe to bet that someone will deploy this and use that master key instead of generating their own.
- jgjot-singh 6y agoHow long did it take you to discern all that?
- mplewis 6y agoHi OP, I'm glad you're tackling this space. But I am not willing to install social network software until I can see some screenshots of what the UI looks like. I need to know what to expect, and what my users can expect.
- mahastore 6y agoWhy can't someone simply go to any hosting service (like bluehost) and do a point and click webpress installation on their purchased domain to host their own website. Webpress also has a bunch of add-on modules for authentication. I just don't understand why this post is the top on HN ATM. I imagine there are bunch of more worthwhile posts. Or maybe we are just too obsessed now with big tech etc?
- wtvanhest 6y agoThis is like the classic DropBox comment [1]. The activities you describe seem easy to you, but are really hard for the average person. Authentication in Webpress? I imagine that is more than a 10 minute activity. [1] https://news.ycombinator.com/item?id=8863 https://news.ycombinator.com/item?id=8863
- sxates 6y agoTo be fair, I think setting up a raspberry pi or an AWS instance isn't 'mom friendly' either. Still more friction than Facebook, which this is positioning itself against.
- wtvanhest 6y agoThe real service is their hosting: "If running it yourself is too daunting, we can host it for you on your own dedicated virtual server for as little as $5 per month."
- bscphil 6y agoIt's more friction on the user's end too. My older relatives stay logged into Facebook. They have no idea what their passwords are, often not even what username / email address they used to sign up. I'm not sure that an approach that requires me to make an account and then send a username / password is going to work for people who needed a 20 minute telephone conversation for help unmuting themselves on a Zoom call.
- deleted 6y ago[deleted]
- phkahler 6y agoWhy AWS? I want to plug a pi into my cable modem and host it there. On a related note, We need something like bit torrent for video. Where the chunks would come approximately in order and watchers effectively host a copy for the entire time they are watching. So we can all self host arbitrary length videos to all our friends on that same Rpi.
- Djvacto 6y agoNot sure if maybe their comment was edited in the last minute, but > For technical people, self-hosting is made easy with a one-line AWS deployment script, *and an install script for the Raspberry Pi Zero W.*
- deleted 6y ago[deleted]
- titanomachy 6y agoUnless you have pretty restricted bandwidth, or a huge number of friends, you should be able to do that pretty easily with a basic HTTP server on your pi; no torrents needed.
- virgil_disgr4ce 6y ago"For technical people, self-hosting is made easy with a one-line AWS deployment script, and an install script for the Raspberry Pi Zero W"
- TedDoesntTalk 6y ago> I tried using WordPress but it took too many custom plugins and configurations and I still got bombarded by spam signup requests I understand the Wordpress pain. My solution was to pay Wordpress.com $35/year to give me a hosted Wordpress instance. There is just one switch you need to flip to make the whole thing private. Family members have access through their own usernames.
- mnd999 6y agoI had exactly the same idea, and I’ve implemented it for myself but haven’t productised it as yet, and I’m not sure I will. Love the self hosting part, and it’s not that hard but the security part I found problematic. I used Oauth for signup, which made it easy to share links to galleries via e.g. Facebook and then click through using Facebook login. I also went for a more open model where anyone could log in but I could block people later on if I didn’t want to share. Depending on how sensitive a particular piece of content is, both models would probably better. It seems important to minimise friction as much as possible or people just move on. Come back later when I’ve approved you is not a good model, I found people simply lost interest.
- throwaway894345 6y agoSay you've never used Twitter without saying you've never used Twitter. > Twitter is more about “see what interesting people are saying”.
- jrexilius 6y agoThanks for putting this out there, I've been thinking about building almost exactly this for myself and my friends. Happy to pay you to host it for us and support development. Looking forward to testing it!
- kodablah 6y agoIt can be hard for people to self host due to local router settings and what not of course. You should consider an option to auto configure as a Tor onion service so their desktop website is immediately available to all (that use a Tor browser of course). I do this all the time to bust NAT for simple sites. And you get encryption and anonymity mostly for free (performance cost often negligible for these kinds of sites).
- jhardy54 6y agoThanks for building this, I appreciate your goals and I'm interested to follow along with your progress.
- brundolf 6y agoTo be honest it sounds like a reboot of MySpace Which, to me, sounds pretty great! But at the same time, MySpace lost It's possible MySpace lost to Facebook in a very different landscape than we have today, as far as people's perception of privacy, and curated feeds, and politics, etc. So maybe your project won't share its fate. Though it might be worth studying its success and failure anyway Anyway: good luck! I think you've got a clear vision and I'd love to see it succeed Edit: One question, does a user need a separate account for every site they subscribe to? If so that could be pretty inconvenient. If my family wanted to use this in place of Facebook to stay in touch, that's N^2 user accounts. Not sure what the solution would be (an optional, centralized server purely for authentication and permissions?)
- gdilla 6y agoThings have changed. But my close circle of friends get by on a closed slack group. we have channels for work, jokes, music, kid updates, etc. a lot better than FB.
- 1vuio0pswjnm7 6y agoIMO, this is the way to go. With the advances in TLS, I have done expts where you can use HTTP headers and server logs as "email" or short message service like Twitter. The "website" can be nothing but some plain text, or even just a 404. Heck, you can even skip a secure backend web server like djb's httpd and just use haproxy alone with option httpclose and no server directive. You can return the headers sent to the sender to simulate "posting'. The US is now feeling the effects of having single websites with millions of pages. It was a stupid idea and is damaging to society. Super high scalability should only be for government websites and the like.