No description
| .vscode | ||
| assets | ||
| config | ||
| lib | ||
| priv | ||
| rel | ||
| test | ||
| .dockerignore | ||
| .formatter.exs | ||
| .gitignore | ||
| Dockerfile | ||
| fly.toml | ||
| mix.exs | ||
| mix.lock | ||
| README.md | ||
Posting
- Making posts
- Broadcasting them to followers
- Post formatting
- Deleting posts
- Sending posts w/ images
- Making posts with CWs
- Making polls
- Followers-only posts (or maybe this is handled because we only send posts to followers? but we also include public in the TO field?)
- [] Sending posts with videos
Profile
- Profile
- Name field (for display name)
- Bust actor cache when you update your profile
Following
- Sending follow request
- View following list
- Withdrawing follow request
- Unfollowing
- Proactively check the outbox of newly-accepted follows
Being Followed
- Receiving follower requests
- Viewing follower requests
- Accepting follower requests
- Rejecting follower requests
- Ignoring follower requests
- Unaccepting follower request ("soft block")
- Blocking
Timeline
- Your posts show up in timeline
- Posts from accounts you follow show up in timeline
- Show the actor avatar and display name
- Receiving posts w/ images
- Receiving posts w/ videos
- Liking posts
- Unliking posts
- Displaying CW posts behind CW
- Displaying polls
- Voting in polls
Individual Post Page
- Show post
- Show replies to post (chronological order)
DMs
- Receiving DMs
- Replying to DMs
- Sending new DMs
Notifications
- Like notifications
- Reply notifications
- Boost notifications
Allowlist
- Manage approved instance list
- Only accept activities from approved instances
- Allow approved instances to see posts in outbox
Protocol Support
- Check that signature header (digest) matches digest of body contents
- Check the domain of the public key against the domain of the object being CRUDed
Testing
- Measure test coverage
- Add tests