To explain a little more behind this project: this started out as a simple, privacy-focused blogging platform called Write.as.
We've been running a Mastodon instance for a while and keeping up with the fediverse, so over the summer as it got much easier to implement, we added support for ActivityPub (the protocol behind Mastodon, PixelFed, Funkwhale, etc.) The fediverse has a strong FOSS culture, so after releasing AP support, I got to work on opening up the source for Write.as, and this is that final result.
Write.as has existed for 4 years, so the application code is very stable. But right now I'm getting the code to a place that works great in any configuration, installs easily, etc.
Just have to say. I've been writing and publishing on the web for more than 20 years now. I've had a couple of high-traffic posts, been slashdotted (once), and was once featured in a blog post on The Atlantic. I had a podcast for four years with a moderate number of subscribers. All of this was self-hosted. I have NEVER had to worry about bandwidth costs. The bandwidth included with the hosting/VPS plans I've used over the years has always been more than sufficient.
This makes me think that bandwidth 'insurance' plans should be a thing. Pay a nominal cost each month to ensure that if something on your site becomes a massive viral hit you get a few weeks of bandwidth cost defrayment to weather the storm and allow you to find a longer term solution if needed.
Seriously, bandwidth just is SUPER cheap period. The fact that some people theoretically might not even have $4.99 to kick towards their "hobby" does not negate that fact.
Like I said above, I did all the stuff I did with nothing more than $5/$10 month cloud hosting plans. Almost no one is going to hit any kind of bandwidth limits these days unless they are trying to run SaaS or just pirating full BluRays in the dumbest ways possible. But we're not talking about those people, we're talking about hobbyist content creators.
i'm a hobbyist, I've been slashdotted, front page of hn multiple times, and on other high profile sites that sent _lots_ of traffic. bandwidth cost is simply not an issue unless you're self hosting video files or some other obscenely large files, and there's no reason to be self hosting things like that. It would only be a concern if a botnet started hitting me with requests. I'm not on any fancy server plan.
That being said, I do pay for a monthly plan, because relying on free handouts for anything that matters is never a reasonable approach.
Simply being sensible about what kind of files you're asking people to download solves 99.9% of this problem and makes your site more enjoyable (faster) for users (especially mobile ones).
Really? It makes me think the opposite. Supposing I had ever bought such a policy, 100% of its cost would have been a complete waste, despite having some extremely high-traffic hits.
But all that aside, this product exists already, it's called a CDN.
Not a bad idea in general, but very risky as an independent business because web hosts can just offer it as a freebie or add-on the moment it starts catching steam with customers. They often already do, although they don't say so or commit to it.
> I have NEVER had to worry about bandwidth costs.
Well obviously you aren't using the right JS framework then. Modern technology will fix this problem for you. Especially if your pages are loading too fast.
AFAIK ActivityPub uses a fan-out to other servers using the sharedInbox of the receivers [1], this makes the cost of distribution to be diluted by all instances of the fedverse that follow that account.
And what are you missing on the current aggregator features? do you have in mind anything more then the normal action of following other users?
Awesome, that's really good to hear! Happy user here - I was recently on the lookout for a simple hosted blogging platform for a personal project, and write.as fit the bill perfectly.
Will PRs for WriteFreely generally make it into Write.as?
Yep! This is the core software behind it all, so bug fixes and new features will make it into Write.as too. It's also kept up-to-date with changes as soon as they're finished, so you'll see everything live there first.
I've been poking around for a good blog platform (my website currently is generated statically with Hugo).
There are certain features that I've been looking for: mathjax/latex, data visualization (though, this could be using pre-generated images), jupyter notebook compatibility, image facilities...
I know that goes beyond the slick simplicity you've got here, but for the work I do, I want to be able to speak in more than one way.
Is there an opportunity for contributing these features?
Absolutely. We do support MathJax already (you can enable it in blog settings), but I'm happy to talk about adding these into upstream, or maybe starting to support plugins for these sort of things. If you want to join the forums [0] we can start talking about what that might look like!
That's pretty common when talking about the actions or product of a non-sentient structure. It helps to differentiate the product from the person. If you say "I released a new version", the end result is tied to the individual. If you say "we released a new version", even if it's just one person, it makes it clear that the new version is the output of the company/organization/collective/structure/etc, even if that company/organization/collective/structure/etc is just one person.
It's kind of like a single-owner LLC. The structure limits the liability by detaching responsibility from the owner and attaching it to the corporation, even though the corporation is in reality just the one person. It's a very abstract concept that just implies a product can be separate from the individual who created it.
As for the code, yep I built everything myself (and wrote about it here [0]). But I've also had the help of people translating the app, giving feedback, and making suggestions along the way. Listening to people and filtering ideas through my own vision has really made the product what it is today.
Thanks, though! I'm just excited to keep pushing the AP ecosystem forward and making the platforms on it more usable.
You must be knowledgeable of the subscription protocols. I wrote a concept for an aggregator, but it would need a custom value with each post. Do you know if there is room for that?
It's a simple rating by the posting user (e.g. 7 out of 10, you could even just post it with the text like so: [7/10] But that's a little confusing.)
The one other question: If I had this rating, could I sort all posts from the last year by rating? Or is the efficient look-up of posts tied to time and it's hard to scan for ratings through a year worth of posts?
While I know this isn't a particularly serious little side-thread, it's actually interesting to many how many folks I've talked to who are not committed to something like Mastodon for philosophical reasons who are put off by the naming choices. It's not Mastodon itself that's the problem: it's insisting on calling posts "toots."
We've been running a Mastodon instance for a while and keeping up with the fediverse, so over the summer as it got much easier to implement, we added support for ActivityPub (the protocol behind Mastodon, PixelFed, Funkwhale, etc.) The fediverse has a strong FOSS culture, so after releasing AP support, I got to work on opening up the source for Write.as, and this is that final result.
Write.as has existed for 4 years, so the application code is very stable. But right now I'm getting the code to a place that works great in any configuration, installs easily, etc.