ether+nick

Turns out how I was build this as an add-on was kinda off a bit. So I've spend the last bit refactoring, making things even more modular.

Then of course I broke a bunch, test broke, my confidences was squashed to almost 0. But now I'm back. And boy could this end up being fun.

Now you can install only the add-ons for your needs & flavours.

The core will be required for all

  • ActivityPub-Core - base add-on required for all others. Basic AP functionality along with actors, notes, collections and what not

But then, I started building a couple add-ons to extend the core and make sure the fundamentals are working

  • ActivityPub-Questions - add-on focusing on Polls and results
  • ActivityPub-LongForm - add-on for Articles and longer form content.

Then here's some future add-on's I can immediately think of that I want to tackle

  • ActivityPub-Media - add-on for Pictures, Video's, and other media sharing.
  • ActivityPub-Places - an experimental add on to explore geographic based activities
  • ActivityPub-Music - another experimental add-on for sharing music plays & likes

How do you want to extend AP?

* * *

Ooops... 💻💥

Server resources maxed, accounts flagged several time 😬🤦, server admins mildly disgruntled as I whimper up and ask... please can I be unsuspended again?

Outcome is, I've refactored a bunch of processes to allow for more granular control. I can now choose how often and how many items to process from the inbox & outbox queue's, choose when to run maintenance and data integrity scripts (which are now separated from ongoing cron job needs), plus view a very loggy log of the processed queue ( UI tweaks coming around that for sure. )

I also implemented a light migration, so that if I make some sort of data changes ( which is very often as I uncover more and more with ActivityPub ), it will only run once, and only once, during a deployment.

Deploy often; break things as I go. That's what personal experiments are all about.

* * *

After a bit of learning yesterday and today, we've got some federation happening.

  • Follower & Following - I'm digging into some of the classic profile update stuff, new bio, picture updates, etc...but there's a hook and you can find me... so, that's a start. I can follow you, you can follow me. Update: Oh right! Forgot, you'd probably like to know how to find me 🤦 @nick@ethernick.com
  • Notes - The core of federation is going. I can make a note, send it out to the world.
  • Other Activities - I've decided to expose a bit more under the hood with activity pub. You can click each item to get the root JSON. Plus non conforming activities will show in the inbox (i.e. I'm not a note ) BTW: I was surprised of the scads of rando's asking an instance to delete things. I spent the first bit adding some "Stray" filtering to ween those out.
  • Boost & Likes - You can do them, although still tweaking a bit.

I'll share code after I've had a bit more time to work out some of the kinks.

Happy ActivityPubbing!

* * *

I believe in ActivityPub and the fediverse. But sometimes, the platforms built to federate feel to me they are hyper focused on a fraction of the capability, or way to complicated in scope and tech, or crammed on some core foundation with duct tape or crazy glue.

So, welcome to my quirky little experiment. I'll build it in the wee hours when the kids have woken me up and I can't get back to sleep; when the rest of the family is having screen time; When I need a quick mental distraction. So know this... the bar is low, I may fall off.

Let's being

So the first step was figuring out how to get started. There are loads of options. After some testing, hair pulling, keyboard smashing, regrouping, coding myself, then back to more testing, I chose Statamic to be the core of my little pet project.

Why Statamic?

Here they are some of the reasons in no particular order:

  • I've admired it from afar for a bit, but never had a project to really sink my teeth into it.
  • The community does things that make me smile by doing pretty, quirky, and counter-intuitive stuff. So I'm going to follow that and see where it goes.
  • I tried others and always felt... meh
  • I tried to build my own and as I did I realized I was building a Statamic clone.

The beginning "TODO:"

For now it's simple. A list that looks like the many other ActivityPub project lists.

  • Federate a profile
  • Let folks follow
  • Follow folks back
  • Post something
  • Get a comment on a post
  • Give a comment on a post
  • Get a like
  • Give a like
  • Get a boost
  • Give a boost
  • Lock it down (block and allow lists)

What's the next activity?

Groan all you want... puns are fun! What I'm actually interesting in are Intransitive Activities. I don't think we give them much value or exposure today.

Old school web was full of this: Scrobbling music, checking into FourSquare, or even the original Facebook, where everything was prefixed with "Nick is..." Remember when the classic Web 2.0 joke was, "I don't care that you ate a sandwich!"? Yet, we all still shared those simple acts. In our new ways, we still do.

I don't want to "bring it back" so-to-speak. With concerns of big brother watching, public logging like this may be passe, but I still think there's something simple and interesting for me to it: a way to "check-in" and support local businesses and places or a way to "scrobble" songs to support musicians, maybe other ways too.

Long story short, this is a beginning. Stay tuned here, and hopefully soon on the fediverse for updates.

* * *
← Previous Next →