Hey, everyone who follows me who is hacking on somethigna round ActivityPub/fediverse — please reply here and share a link to your app/GitHub/Glitch! Would love to show off all the creativity that's happening right now. (And please boost so your friends can share their projects too.)

@anildash I don't follow you, but I've been diggin @grunfink's snac (a minimal ActivityPub instance implemented in C, also has threaded messaging):

https://codeberg.org/grunfink/snac2

I did create a MacPort for it to make it easier for others to install on macOS (CI tested as working as far back as macOS Sierra):

https://ports.macports.org/port/snac/details/

snac2

A simple, minimalistic ActivityPub instance written in portable C

Codeberg.org
@anildash this is an incredibly small thing, but I slapped together a timeline embedding thingy https://sampsyo.github.io/emfed/
Emfed: Mastodon Feed Embedding

@adrian that’s huge! I’ve been wanting exactly that.
@anildash @adrian so glad to see this as I’ve been wanting to replace the Twitter feed on my blog.
@anildash I did ask OpenAI to create python script to add OpenAI to Mastodon. All I need is to create an instance now....
@anildash don't have a link, but I found out that the Instagram Basic Display API is pretty easy to work with, and aw working on pulling instagram posts automatically down into my website
@[email protected] I've been improving our ActivityPub support in Micro.blog. Just posted a video earlier today that you might find interesting: www.youtube.com/watch
Micro.blog and Mastodon basics

YouTube

@anildash not an app but I couldn’t find well documented Masto moderation process docs, so I’ve been hacking on these: https://indyhall.notion.site/jawns-club-moderation-guidelines-0b0fac99127d4d8489bd75af94d67652

Hoping they provide inspo and guidance for aspiring server admins and mod teams.

jawns.club moderation guidelines

Our Mastodon server is independently run and actively moderated using our public Code of Conduct as our primary set of guidelines.

Indy Hall Notion on Notion

@anildash I just released a #Prometheus exporter for Mastodon that exposes some helpful metrics (e.g. number of mod reports, posts, users, etc.)

More detail:
https://github.com/andrew-d/mastodon_exporter
https://ottawa.place/web/@andrew/109503831343347255

GitHub - andrew-d/mastodon_exporter: Prometheus metric to export data about a Mastodon instance

Prometheus metric to export data about a Mastodon instance - GitHub - andrew-d/mastodon_exporter: Prometheus metric to export data about a Mastodon instance

GitHub

@anildash I’m working on a general-purpose ActivityPub utility library for #Clojure over at https://github.com/jahfer/clj-activitypub.

A lot of the plumbing is already there, but it needs some niceties to make it useful!

GitHub - jahfer/clj-activitypub: An ActivityPub library for Clojure

An ActivityPub library for Clojure. Contribute to jahfer/clj-activitypub development by creating an account on GitHub.

GitHub
@jahfer @anildash Thank you, that's exactly what I'm looking for! I started doing the same thing yesterday.
@jahfer @anildash And woohoo! that works. I'm able to pull back details of my own account from mastodon.scot. I'll submit a documentation patch later this morning.
@anildash @simon_brooke That’s awesome! Happy to accept.
@anildash wish mastodon would come up with a plug-in system so that admins could incorporate the best bits more easily

@anildash There's not much code in it yet as we're still building the team, but here's the repo for #Pinetta:

https://codeberg.org/pinetta/pinetta

pinetta

a federated pinboard thingy.

Codeberg.org

@anildash A reddit-like content aggregator and micro-blogging platform for the fediverse.

https://kbin.pub - Project site
https://karab.in - Polish-lang instance
https://dev.karab.in - demo
https://github.com/ernestwisniewski/kbin - GitHub

Home | kbin.pub - Fediverse of content

@anildash nothing new, but hopefully useful to others - some ways to embed Mastodon content on other sites (need to expand this to other Fedi services...) https://mastodon-embeds.glitch.me/
Examples of embedding Fediverse content (timelines and toots, Pixelfed posts)

Examples of embedding Fediverse content (timelines, toots, Pixelfed images)

@andypiper @anildash Damn Andy, you never stop with the good stuff!
@mergesort @anildash just added a single Pixelfed example and want to add some more - to be fair I'm mostly scouring GitHub for things to incorporate.
@anildash I've been building a Mastodon client for ESP32 (WiFi microcontroller) https://github.com/ringtailsoftware/lyuba
Also playing with snac https://codeberg.org/grunfink/snac2 (not written by me), a tiny ActivityPub instance in C
GitHub - ringtailsoftware/lyuba: ESP32 Mastodon Tooter

ESP32 Mastodon Tooter. Contribute to ringtailsoftware/lyuba development by creating an account on GitHub.

GitHub

@anildash I am building an ActivityPub conformant Personal Medical Record app that is going to revolutionize how Americans gain access to care.

Not ready for github, I'll go on more as soon as we have some cases to show.

@CartyBoston @anildash how do I learn more? This is important.
@innonate @anildash follow me here, work is active, posting a lot
@anildash I’m working on sharing how to operate your own Mastodon server for a single user. Next step is to wrap this all up in a CDK project. But also, cost optimization. Mostly just my notes so far. https://www.micahwalter.com/tag/mastodon/
Mastodon - Micah Walter

Micah Walter
@anildash @micah this is great. Curious why you’re just taking an ebs snapshot instead of a whole AMI? Wouldn’t it be about the same cost and enable you to launch the whole server backup instead of rebuilding the instance off the ebs snap?
@kuxaku @anildash my primary goal was to provide incremental backup of the data in PostgresSQL

@micah @anildash Gotcha. I guess I like the AMI because I get the extra config data around t he instance too, so in an emergency I can more easily restore it. You could even just plop the new AMI into your CDK and have it use that to relaunch.

Not trying to criticize, just understand :) I've been planning on writing a CDK template for mastodon for the last week or two as well, so I'm interested in what you come up with!

@micah @anildash

Its a bit tricky in AWS if you want to keep costs at a minimum. I was thinking a Fargate service behind an ALB for mine - but obviously thats got a bit more cost than a t4g.small.

I'm mostly worried about what the bandwidth costs look like, it seems like mastodon is pretty chatty.

@kuxaku @anildash I'm gonna do an analysis on this around end of January.
@kuxaku @anildash if there was no rapidly changing data on the instance, and AMI would make sense, and would be nice to have in terms of scaling, etc. But, an EBS snapshot makes sense for incremental backups in this scenario.
@micah @anildash Wouldn't taking the AMI using AWS Backup also create EBS snaps for any attached drives?
@kuxaku @anildash yes it will do that. But I think doing periodic (hourly) AMIs might not be a great idea.. I’d have to look into it but I don’t think they are incremental like an EBS snapshot, so it may cost a lot.. 🤷‍♂️
@micah @anildash I usually use AMI creation on a daily schedule, not hourly so I'm not sure about that. I think the AMI is basically just metadata around how to launch the instance - the snapshots are the same as if you were to just take a manual EBS snapshot. The AMI just knows to launch with those snapshots, instead of needing to manually attach them to a new instance.
@kuxaku @anildash interesting! I’ll have to look into this. I do really like the EBS Snapshot lifecycle tool, which is pretty useful.

@micah @anildash It sounds like what you've got works though!

Check out AWS Backup, I think it might do a lot of what you want here

@micah @anildash

I'm a single user instance

- Vultr 2GB Ubuntu 22.04, 50GB storae.

- an Amazon AWS bucket with a Cloudfrount CName so media comes from https://media.futurist.info reducing local load

Cost is about $12 a month plus peanuts for AWS.

I'll be putting email onto Amazon SES later today to get away from Mailgun. That will be about $0.01

@anildash working on a thing but not ready to talk about it yet.
@anildash I get the strong impression everyone is busily hacking at the same time! Mine has reached "concept good but scrap and start over" stage.

@anildash I am steadily adding ActivityPub support to DasBlog, started with webfinger. The goal being to allow anyone to follow blogs directly.

https://github.com/poppastring/dasblog-core

GitHub - poppastring/dasblog-core at webfinger-actor-support

The original DasBlog reimagined with ASP.NET Core. Contribute to poppastring/dasblog-core development by creating an account on GitHub.

GitHub
@anildash bookmarking this announcement but I'm nowhere near close to primetime on my own work as there are a few too many federated privacy issues to work out yet... I am still not clear if the protocol is up to scratch.
@anildash we're in the early discussions about how we can help organizers working to preserve democracy in ways that are far more fine-grained than bird site (joining groups, tags, etc). We're thinking about how to make more of our organizers content a thing that spreads out in whatever way makes sense for the use-case like in-person event notices, or calls to action for a city meeting, petitions to people with key representatives, etc.
@anildash https://github.com/d3cline/fossilize Framework to bring email like linting for users/instances to mastodon
GitHub - d3cline/fossilize: Dynamic mastodon domain blocker

Dynamic mastodon domain blocker. Contribute to d3cline/fossilize development by creating an account on GitHub.

GitHub
@anildash I just pushed deploy on fedipages.com to solve a problem I had discovering new people to follow. I have a few features I want to work on but first a search engine for people! https://mastodon.social/@innonate/109524433818181818

@anildash I'm building this site to give a view of hashtags across all the Mastodon servers:

https://allmastodon.com/allhashtags.html

Active Mastodon Hashtags

Active Mastodon Hashtags

@anildash I've built a toy/hack Node.js #ActivityPub server which exposes (some of) the #MastodonAPI in the front end. That means you can connect to it with a Mastodon client app and send/receive messages. It's helped me figure out how this stuff works and hopefully will help others understand too https://github.com/ringtailsoftware/cubiti
GitHub - ringtailsoftware/cubiti: cubiti is a toy Fediverse server written in Node.js

cubiti is a toy Fediverse server written in Node.js - GitHub - ringtailsoftware/cubiti: cubiti is a toy Fediverse server written in Node.js

GitHub
@tobyjaffey @anildash awesome! I need to learn how the client api works!! Thank you!!!
@tobyjaffey @anildash I’ll look into it later. Really interesting
@tobyjaffey @anildash Ah interesting. I've been thinking of Mastodon as an ActivityPub implementation, but in practice, it sounds like it also defines a higher-level open API that supports other clients.

@anildash I'm working on @flockingbird . We've delivered a fediverse job-board at https://search.flockingbird.social
Bot is here https://github.com/Flockingbird/hunter2

Flockingbird aims to fill the "professional social networking" (aka LinkedIn) gap on the Fediverse.

Flockingbird - Search Job Openings on the Fediverse

@anildash I didn't like how awkward it was for someone to follow you from an external site, so I built FediFollow

FediFollow gives you a page where someone can put their handle in and be redirected to their instance's remote follow page.

For example, here's mine: https://fedifollow.glitch.me/follow?account=codefoodpixels%40indieweb.social

Folks can go to https://fedifollow.glitch.me to get the link to their own follow page.

#fediverse #WebDevelopment #OpenSource #Glitch #Mastodon #indieweb #

Follow Luke Bonaccorsi (indieweb.social/@codefoodpixels) - Fedifollow

@codefoodpixels it would also be really nice if server operators could tell their servers "yes, I know this person is on another server, fetch their last 50 posts by default anyway on demand"
@anildash
@anildash I'm working on https://communick.com, a commercial provider for open source social media and messaging (Mastodon/Matrix, Pleroma and Pixelfed coming soon), and I also started work on a custom search engine for the fediverse (still not ready, though).
Communick: social media and messaging hosting that respects you and your privacy

Communick, open communications and social media hosting services

@anildash working on understanding the ActivityPub spec better by implementing a version (very early fiddling)

https://www.ncoti.org/~jeffs/projects/jfc/source/activitystreams/vocabulary/

Index of /~jeffs/projects/jfc/source/activitystreams/vocabulary

@anildash Not mine, but this is a browser Plugin to make it easier to interact across multiple instances:

https://github.com/lartsch/FediAct#installation

GitHub - Lartsch/FediAct: Chrome/Firefox extension that simplifies interactions on other Mastodon instances than your own.

Chrome/Firefox extension that simplifies interactions on other Mastodon instances than your own. - GitHub - Lartsch/FediAct: Chrome/Firefox extension that simplifies interactions on other Mastodon...

GitHub

@anildash

https://github.com/simon-brooke/dog-and-duck

This is work in progress and it's progressing quite fast but there's not much that works yet.

GitHub - simon-brooke/dog-and-duck: A playground for hacking ActivityPub stuff.

A playground for hacking ActivityPub stuff. Contribute to simon-brooke/dog-and-duck development by creating an account on GitHub.

GitHub