Skip to content

ActivityPub implementation validator (CLI + lint plugin) #287

@malkoG

Description

@malkoG

Problem

Developers new to ActivityPub often struggle to identify which components need to be implemented for a working server. It's easy to miss required dispatchers or handlers.

Solution

Add fedify checklist command that shows:

$ fedify checklist

ActivityPub Server Checklist
===========================

Core Requirements:
✅ Actor Dispatcher (setActorDispatcher)
✅ Key Pairs Dispatcher (setKeyPairsDispatcher)
❌ NodeInfo Dispatcher (setNodeInfoDispatcher)
❌ Inbox Listeners (setInboxListeners)
  - Missing handlers: Follow, Accept, Create, Undo

Recommended:
❌ Outbox Dispatcher (setOutboxDispatcher)
❌ Followers Collection (setFollowersDispatcher)
❌ Following Collection (setFollowingDispatcher)

Optional:
- Object Dispatchers
- Featured/Liked Collections
- Additional activity handlers (Update, Delete, Like, Announce)

3/10 components implemented

Benefits

  • Clear implementation roadmap
  • Prevents missing critical components
  • Improves federation compatibility
  • Reduces learning curve

Implementation Ideas

  1. Analyze existing federation setup
  2. Show progress with checkmarks
  3. Link to relevant docs
  4. Optional boilerplate generation

This would greatly help newcomers understand what's needed for a complete ActivityPub implementation.

Metadata

Metadata

Assignees

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions