VAAK: My Little Two and a Half Week Old Fediverse App | cmdr-nova@internet:~$

VAAK: My Little Two and a Half Week Old Fediverse App

Follow me via:





Welcome to the world of using Mastodon, Akkoma, GoToSocial and deciding that none of them do all of the things I’ve always wanted to do with software on the fediverse. All of them having strengths, and also weaknesses, and taking years to implement features. This goes doubly hard for Mastodon. I see you, post queues, hanging out in the background non-implemented! But, now we live in a world where you can take the things you know, your experience, and knowledge, and explode it like a nuclear bomb.

Enter: VAAK

This kind of started as a: Hey, my domain is still receiving ActivityPub queries a year after I shutdown this domain’s Mastodon instance? Well, why not make some kind of little thing that can resolve those queries and allow me to read some AP timelines right from my website!

Which turned into: Okay, but what if my blog posts also posted directly to this and skipped the massive scripts that send it off to my Mastodon instance?

Which turned into: What if this was just a fully functional ActivityPub instance that only I can use?

Which turned into: What if this was custom software that anyone can join, it’s name is VAAK, it has features! And it’s quick! And it also sort of looks like old Twitter!

Two and a half weeks later, I am here.

Now, you’re probably wondering, “Did this mfer use AI assistance?”

Yes I did. There is no other way you could do something this huge in 2 weeks and have it functioning.

I understand this makes some people rage with anger, even in so that they’d threaten to murder me … (or other people, a growing trend I’m noticing among the staunchest of the staunch anti-AI posters). But, if this really bothers you, you don’t have to use it, you don’t have to sign up, and you don’t have to look at it.

That aside, here are a list of features off the top of my head before I jump into Call of Duty and stop thinking about web development for at least one day.

Features:

  • Bookmarks and bookmark folders for organization
  • Home (followers), local, and federated feeds
  • Image-only “Gallery” federated feed
  • Vakktok, a video only TikTok-ish feed
  • A local-only Notices page to keep local users aware of development
  • A local-only discussion forum for users to interact in a way that isn’t just posting to the timeline
  • Audio posts
  • Post drafts
  • Post queuing with custom times
  • Feature-rich HTML profiles that are session-aware
  • The ability to link your Second Life avatar to your profile
  • Up to eight personal link fields
  • RSS and Atom feed generation
  • Bluesky bridge aware linking and following/followers aggregation
  • Featured accounts
  • Mastodon “Collections”
  • There is a cool little sound that plays when you post something
  • Lists
  • 2000 characters per post
  • The ability to login and post from an app, be it Mastodon’s official app, Ice Cubes, Tusky, etc.
  • The ability to import/export all the same stuff that you can on Mastodon
  • The ability to move your followers in and out
  • Color themes, including: green, yellow, purple, pink, blue, red, and orange
  • Up to 50mb per video, 10mb per image
  • Remote media is not “fetched”, or stored, it is simply previewed.
  • Privacy features including manual-approve follows, and reply + quoting privacy selection
  • An option for auto-following accounts who follow you
  • A vanity “verified” checkmark, for shits and giggles
  • Optional automatic post deletion, search indexing, discovery
  • Blocks, mutes, word/phrase muting, and deprioritization mutes (not full mutes, just less prominence on the timeline, a feature no other AP software has ever seen)
  • Verified links and verified creator functionality
  • Anti-AI user highlighting (a script that watches cached posts and let’s you know when a user is likely anti-AI, either so that you can avoid them, or more easily follow them. Matches key words, not an LLM scraping the timeline)
  • Optional OpenAI API key entry fields for help with writing alt text (not everyone is good at writing descriptive text)

Still interested? You can join either by subscribing once in order to receive a permanent invite code, or by asking me very nicely.

Some explanations of different features you may feel contentious or confused about:

Why have a filter that places an “anti-AI” label on accounts?

Like I said earlier in this post, one of the biggest reasons I stepped away, and then went the opposite direction of the “no AI, never AI” movement, is because, months ago, I saw a guy on the federated timeline say something along the lines of, “If I meet someone face-to-face who uses AI, I’m going to kill them.” And then, at the time, I was like, “Surely that’s just one guy who’s having some kind of psychosis.”

But it wasn’t.

This is something I see regularly. Random people radicalizing themselves into potential murderers who have no qualms with fantasizing about killing people, because of some machines. No matter how you feel about LLMs, murder is not a conclusion you should ever arrive at. There is a massive difference between a billion dollar corporation deploying agents across the web, and regular normal people with a minimum wage day-job using AI to assist in hobby code projects.

Straight-up. If critical thinking and nuance is lost on you in 2026 and going into 2027, I will probably no longer interact with you. “But what about art theft?” Please see my post on copyright, and how LLM anxiety is turning leftists into conservatives.

Can I install this software myself and use it on my own server?

Not yet, but I’m working on making that possible, in a maybe-later kind of timeframe. There are still bugs, and I’m still working on making improvements, and there is definitely intermittent downtime and feature-switching that is occurring.

Why allow people to use OpenAI API keys for alt text generation? Just write it yourself!

As noted in that feature bullet, believe it or not, some people are just no good at being descriptive, or maybe they’re in a hurry: Whichever. They can input a key and have a generally good description in seconds, and then they can edit it from there.

What the hell are “deprioritization” mutes?

This is a feature I stole from Twitter. And I’m not talking, “I looked at and remembered how Twitter does things from their moderation side.” This is, I instructed an AI to comb over Twitter’s source code and to pull out useful bits. Soft muting people who are spamming the timeline so that you can see other posts more easily (without blasting them from orbit completely) was an extremely interesting feature, and it’s on VAAK. And it’s per-user.

Do the audio posts work?

Mostly. On most AP software. Mastodon fights it, but you can still download the audio from a Mastodon client and listen to whatever a user has recorded themselves saying.

Why link your Second Life avatar account to your Vaak/ActivityPub account?

I don’t know, I thought it’d be fun. Plus, Primfeed is yet another closed-off, gated community that’s not connected to anything, and that annoys me. Future features related to this could go along the lines of allowing people within Second Life to take photos with the virtual camera, and have the ability to upload directly to Vaak. But that’s a feature I’d have to get in-touch with the Firestorm devs about.

What does this run on?

It’s PHP and PostgreSQL, like a mixture of Akkoma and Misskey.

Is there authorized fetch?

The software signs everything for every request that requires it.

Other than that, there you go. And if you’re jumping on-board, or already have, welcome to my new age of fediverse software.

Potential future features:

  • Blocklist subscriptions, but this is a big maybe. Public blocklists have been a source of constant abuse on Bluesky, and it may or may not be a good idea to even explore.
  • The implementation of the ability to post a poll (I kind of don’t really care about this feature, but the button for it is there, it’s just not integrated yet)
  • I dunno, but I’m sure I’ll think of more stuff!

Issues that you will probably notice:

  • Due to the complexity of the network, and all of the different kinds of software interacting with it, some posts on the timeline might have garbled formatting that needs fixing. This is kind of an “as I see it” sort of thing I deal with. Like, “Oh, the way Wafrn posts display is bad, I have to fix that” lol Or, “Federated Wordpress posts have no formatting.” and so on and so forth.
  • Viewing someone’s remote profile from within the app is a bit limited right now
  • Vakktok is wonky as balls, and I have to work on improving it.
  • Vaak runs pretty fast right now, but it could slow down over time as federation increases. This is an active thing that I’m watching, but there are workers in the background handling it.

mkultra.monster is independent, in that it is written, developed, and maintained by one person. Written, developed, and maintained, not for scrapers, bots, scammers, algorithms, or grifters: But for people to follow and read, just like the way it used to be, back in the golden age of the internet.

mkultra.monster is independent, in that it is written, developed, and maintained by one person. Written, developed, and maintained, not for scrapers, bots, scammers, algorithms, or grifters: But for people to follow and read, just like the way it used to be, back in the golden age of the internet.


Fediverse comments

Replies from the Fediverse to this page’s @cmdr_nova@mkultra.monster post.

Loading replies…