Hi, I'm building an ActivityPub server in TypeScript

Hi everyone! I’m attempting to build a spec-compliant ActivityPub server with TypeScript (Node.js).

There’s a lot missing. Any help would be appreciated!

Let me know if you have any questions about it.

Here’s the Github link:

6 Likes

Very interesting!
Can it work with Fastify ?
And is it non-opiniated enough to work with a postgresql database ?

1 Like

Hi thanks so much for looking at it!

Yes, that is definitely the goal.

It is designed to be modular, with a core logic layer, plus plugins/adapters for Database, Server, Authentication, etc.

I’ve only written a MongoDB database adapter and an Express middleware adapter so far, but I am definitely interested in adding more adapters.

1 Like

Have you seen #software:redaktor-me ?

In case it’s helpful – so the current state of the art on a general purpose AP server (in JS) would probably be GitHub - immers-space/activitypub-express: Modular ActivityPub implementation as Express JS middleware to easily add decentralization and federation to Node apps .
The other thing to look at, if you’d like, would be the CalcKey implementation (a fork of Misskey), written in TypeScript – thatonecalculator/calckey: A greatly enhanced fork of Misskey with better UI/UX, security, features, and more! - calckey - Codeberg.org