Skip to main content
This release is a pre-release — the latest non-prerelease version of @fedify/botkit is 0.1.1. Jump to this version

@fedify/botkit@0.2.0-dev.77+d1f283de
Built and signed on GitHub Actions

A framework for creating ActivityPub bots

This package works with Deno
This package works with Deno
JSR Score
88%
Published
4 weeks ago (0.2.0-dev.77+d1f283de)
class MemoryRepository
implements Repository

A repository for storing bot data in memory. This repository is not persistent and is only suitable for testing or development.

Properties

followees: Record<string, Follow>
messages: Map<Uuid, Create | Announce>
sentFollows: Record<string, Follow>

Methods

addFollowee(
followeeId: URL,
follow: Follow,
): Promise<void>
addFollower(
followId: URL,
follower: Actor,
): Promise<void>
addMessage(
id: Uuid,
activity: Create | Announce,
): Promise<void>
addSentFollow(
id: Uuid,
follow: Follow,
): Promise<void>
getFollowee(followeeId: URL): Promise<Follow | undefined>
getFollowers(options?: RepositoryGetFollowersOptions): AsyncIterable<Actor>
getMessage(id: Uuid): Promise<
Create
| Announce
| undefined
>
getMessages(options?: RepositoryGetMessagesOptions): AsyncIterable<Create | Announce>
getSentFollow(id: Uuid): Promise<Follow | undefined>
removeFollowee(followeeId: URL): Promise<Follow | undefined>
removeFollower(
followId: URL,
followerId: URL,
): Promise<Actor | undefined>
removeMessage(id: Uuid): Promise<
Create
| Announce
| undefined
>
removeSentFollow(id: Uuid): Promise<Follow | undefined>
setKeyPairs(keyPairs: CryptoKeyPair[]): Promise<void>
updateMessage(
id: Uuid,
updater: (existing: Create | Announce) =>
Create
| Announce
| undefined
| Promise<
Create
| Announce
| undefined
>
,
): Promise<boolean>

Add Package

deno add jsr:@fedify/botkit

Import symbol

import { MemoryRepository } from "@fedify/botkit";

---- OR ----

Import directly with a jsr specifier

import { MemoryRepository } from "jsr:@fedify/botkit";