Community Update - Waterfall is now Open Source!
It's been a long time coming, and I finally stopped procrastinating.
What is Open Source?
Open Source means that the full source code of the site is available. The idea behind Open Source is that anyone can inspect, modify, and commit their changes to improve the project. Think of the saying "two heads are better than one" - while I'm certainly not a bad coder, I'm not an expert either. Someone will, undoubtedly, look at the code and find something I did wrong. With Open Source, they can just fix it, and let me know about it - and then bam! Waterfall just got improved. Except instead of two heads, it's the entire planet able to help if they feel like it.
Why make Waterfall open source?
I've made a few posts on my personal blog about how I hate the current trend of the Internet - that trend being "there's like seven sites". I miss the old days where people could set up their own forums and stuff. phpBB exists for those, and Mastodon exists for Twitters, but there's not really been a good Tumblr thing you could spin up yourself. Then I realised I made Waterfall and oh shit, I can just publish my code so people can do that.
It also means people can verify statements on things like "the site doesn't track you", etc etc. It also opens up the floor to others to contribute and improve the site in ways I couldn't do on my own. Additionally, more people working on it means I have more time to work on other things, so it benefits me too.
Waterfall is still Waterfall - but this way it survives forever, and, if we're lucky, might get a little of the old Internet back, where niche sites can carve out their own little corner instead of there being just Reddit and Twitter.
This also means anyone can run their own little version of the site. I'm nicknaming them cascades. In theory, anyone can run their own little private version of Waterfall. In reality, you'll probably need some technical chops about you - it's not an easy thing to run, and needs some beefy stuff and knowledge behind the scenes. The preferred option is you help improve Waterfall proper to make it better for everyone, but if - for example - you want to run a private little thing for you and your friends to roleplay as your D&D characters, that's a perfect use for it. Larger scale stuff is not recommended though - Waterfall got expensive pretty fast as people started joining. This site is still the "canonical" instance, and as stuff gets pushed to the repo, the site will be updated with all the new features.
The code is licensed under the Affero General Public License, which means if you run a private instance, any modifications you make to the code must be made publicly available. You're also not allowed to pretend you made it, change or remove the license, and you have to list any changes you made too.
How can I contribute?
Check the repo! In particular, CONTRIBUTING.md contains some stuff to get you started. There's now also a developer channel in the Discord. I look forward to working with you all! Developers who consistently contribute good code might get a little cash every now and then as thanks, given the Patreon is still a thing. Don't worry if you're not a coder - feature suggestions, bug hunting, and helping write documentation are all good ways to contribute too. If you do want to take a crack at it though, check the issues - some are specifically marked as good options for beginners.
What can I contribute?
Check the issues and see what needs doing. At the moment, the code is in a transition period of "this is just Thell and has caffeine dependency", moving towards "this is a serious open source project now". The code is a mess and very much reflects that only one person was maintaining it, so commenting code, cleaning it up a little, and writing more tests are all things that need doing and are things I'll be working on over the next few days.
If you have good ideas for features - go ahead and implement them! Throw in a PR, and it'll be merged in and added to the site after being reviewed.
After that - Waterfall 2.0 is going to be a thing, designed from the ground up (while maintaining backwards compatibility, of course), designed from the beginning with this open source, self-hosting stuff in mind. Feel free to join the Discord to get in on the design stage of that.
As always, join the Discord to discuss!
quick!! somebody make an app!
DUDE I LOVE YOU SO MUCH but not in a weird way i just mean!! you're cool, this is cool, i hope this brings a lot of cool people doing a lot of cool stuff
i really love this move to open source and the reasoning behind it, as someone who deeply misses the niche internet communities of days gone, this is something that means quite a lot to me. Thank you waterfall! Let's hope this'll be the first step to the revival of communities like the old days! :D