#Fedify 1.4.0 has been released, and #BotKit 0.1.0 will be based on Fedify 1.4.0. BotKit 0.1.0 is also about to be released, so please stay tuned!
https://hollo.social/@fedify/0194d42d-ee82-7a21-b66e-f88702278099
#Fedify 1.4.0 has been released, and #BotKit 0.1.0 will be based on Fedify 1.4.0. BotKit 0.1.0 is also about to be released, so please stay tuned!
https://hollo.social/@fedify/0194d42d-ee82-7a21-b66e-f88702278099
🎉 Announcing BotKit 0.1.0: A new framework for creating ActivityPub bots!
We're thrilled to announce the initial release of #BotKit, a #TypeScript framework that makes creating standalone #ActivityPub bots simpler than ever before. With BotKit, you can create a complete fediverse bot in just a single TypeScript file!
Key features:
🔋 Standalone bot creation—no need for a Mastodon/Misskey account
🧩 Simple, developer-friendly API
🚀 Easy deployment on Deno Deploy, Fly.io, Railway, or your own server Powered by @fedify for robust ActivityPub protocol handling
Getting started is as simple as:
deno add jsr:@fedify/botkit@^0.1.0
Here's a quick example of a weather bot:
const kv = await Deno.openKv();const bot = createBot<void>({ username: "weatherbot", name: "Seoul Weather Bot", summary: text`I post daily weather updates for Seoul!`, kv: new DenoKvStore(kv), queue: new DenoKvMessageQueue(kv),});// Reply to mentionsbot.onMention = async (session, message) => { await message.reply(text`Current temperature in Seoul is 18°C!`);};// Post scheduled updatesconst session = bot.getSession("https://weather.example.com");setInterval(async () => { await session.publish( text`Seoul Weather Update 🌡️ Current: 18°C Humidity: 65% Forecast: Clear skies ☀️` );}, 1000 * 60 * 60); // Hourly updates
While BotKit currently supports #Deno, we're working on bringing Node.js and Bun support in future releases.
Ready to create your first fediverse bot? Check out our docs at https://botkit.fedify.dev/ to get started! 🚀
Now we have a dedicated #Matrix room for #BotKit (#botkit-users:matrix.org) in the Fedify community (#fedify:matrix.org), so join us!
We'd like to introduce the #Fedify project family—a set of related tools that make building #ActivityPub applications more accessible:
@Fedify (@fedify) is a #TypeScript library for building federated server applications powered by ActivityPub and other #fediverse standards. It provides type-safe objects for Activity Vocabulary, WebFinger client/server, HTTP Signatures, and more—eliminating boilerplate code so you can focus on your application logic.
@Hollo (@hollo) is a single-user microblogging server powered by Fedify. While designed for individual users, it's fully federated through ActivityPub, allowing interaction with users across the fediverse. #Hollo implements Mastodon-compatible APIs, making it compatible with most Mastodon clients without needing its own web interface.
Hollo also serves as our testing ground for bleeding-edge Fedify features before they're officially released.
@BotKit (@botkit) is our newest family member—a framework specifically designed for creating ActivityPub bots. Unlike traditional Mastodon bots, #BotKit creates standalone ActivityPub servers that aren't constrained by platform-specific limitations (like character counts).
BotKit's API is intentionally simple—you can create a complete bot in a single TypeScript file!
All three projects are open source and hosted under the @fedify-dev GitHub organization. While they serve different purposes, they share common goals: making ActivityPub development more accessible and expanding the fediverse ecosystem.
If you're interested in trying any of these projects or contributing to their development, check out:
Fedify: https://fedify.dev/
Hollo: https://docs.hollo.social/
BotKit: https://botkit.fedify.dev/
Introducing #BotKit: A #TypeScript framework for creating truly standalone #ActivityPub bots!
Unlike traditional Mastodon bots, BotKit lets you build fully independent #fediverse bots that aren't constrained by platform limits. Create your entire bot in a single TypeScript file using our simple, expressive API.
Currently #Deno-only, with Node.js & Bun support planned. Built on the robust #Fedify foundation.
Trying out @hongminhee 's #BotKit.
Wow this might actually work 😮 Just roughly 50 lines of code & 3 dependencies 🤯
I guess @iss-location-bot now joins @FediChatBot as potentially the 2nd(?) bot built with @hongminhee 's #BotKit 🍻
Learn more:
- BotKit: https://botkit.fedify.dev/
- ISS Location bot repo: https://github.com/cheeaun/iss-location-bot
- Previous thread: https://mastodon.social/@cheeaun/113826068433133218
Introducing #BotKit: A #TypeScript framework for creating truly standalone #ActivityPub bots!
Unlike traditional Mastodon bots, BotKit lets you build fully independent #fediverse bots that aren't constrained by platform limits. Create your entire bot in a single TypeScript file using our simple, expressive API.
Currently #Deno-only, with Node.js & Bun support planned. Built on the robust @fedify foundation.
The #BotKit docs now have Recipes! It contains practical examples for common tasks like:
Sending a direct message
Following back
Automatically deleting old messages
Scheduled messages
Automatically replying to mentions
Thread creation
Thread traversal
More recipes are on the way. Check it out now.
#BotKit now allows messages to update().
Exciting update on #BotKit: we've introduced a new Repository abstraction layer that provides cleaner data access. While previously data operations went directly through KvStore, they now go through Repository—improving separation of concerns and making the codebase more maintainable. Don't worry though—there are no breaking changes to the public API that BotKit users rely on!
Key benefits:
Better abstraction over data sources
Cleaner internal architecture
Fully backwards compatible
Check out our docs for the technical details: https://botkit.fedify.dev/concepts/repository.
#ActivityPub #fediverse #fedidev #BotKit
https://hollo.social/@hongminhee/0194a0d4-1d67-7c81-80ba-e7ade212d27a
#BotKit now comes with a built-in web interface! Your fediverse bots will have profile pages and permalink pages for posts, right out of the box. Check out the screenshot to see how it looks.
#BotKit's web interface now supports theme customization! 🎨 You can set your preferred color theme using the pages.color option in createBot(). Here are some examples showing the same interface in different colors: "violet", "pumpkin", "azure", and "green" (default).
const bot = createBot<void>({ // ... other options pages: { color: "violet" // or "pumpkin", "azure", etc. }});
We support all color themes from Pico CSS—including "amber", "fuchsia", "indigo", "jade", "lime", "pink", "sand", "slate", "yellow", "zinc", and more! Check out Pico CSS's Colors docs for the full list of available themes.
Which color is your favorite? 🤔
📢 Important announcement! #BotKit's #GitHub repository has moved to a new home! 🏠
The repository is now located at @fedify-dev/botkit (previously @dahlia/botkit). All future development will continue at the new location.
Don't worry—everything's the same, just a new address! Please update your bookmarks and project references. Thanks for being part of our community!
#Fedify #ActivityPub #fediverse #fedidev
https://hollo.social/@fedify/0194a851-581d-779c-b777-dc39e753ef14
Are you interested in creating bots for the #fediverse? Meet #BotKit, a #TypeScript framework that makes bot development easier than ever!
Key Features:
True Independence
Create standalone #ActivityPub bots
No need for a Mastodon or Misskey account
Free from platform-specific limitations
Simple and Intuitive API
Create a complete bot in a single TypeScript file
Intuitive event handlers for mentions, follows, and messages
Rich text formatting with Markdown support
Modern Deployment
Deploy on Deno Deploy, Fly.io, Railway, or any virtual server
Minimal dependencies
Designed for modern cloud platforms
Enterprise-Ready Foundation
Built on Fedify, a rock-solid ActivityPub framework
Seamless federation with Mastodon, Misskey, and other platforms
Robust compatibility across the fediverse
Developer Experience
Full TypeScript support with great IDE integration
Comprehensive documentation
Built-in testing utilities
Here's a quick example of how simple it is to create a bot:
import { createBot, mention, text } from "@fedify/botkit";const bot = createBot<void>({ username: "greetbot", name: "Greet Bot", summary: text`A friendly bot that greets people!`, // ... configuration ...});// Respond to mentionsbot.onMention = async (session, message) => { await message.reply(text`Hi, ${message.actor}! Thanks for saying hello!`);};export default bot;
Getting Started:
Install #Deno
Run: deno add jsr:@fedify/botkit@^0.1.0-dev
Create your bot with just a few lines of code
Check out our documentation at https://botkit.fedify.dev/ to learn more!
#BotKit now supports #hashtags in your bot messages!
You can now add searchable hashtags to your bot's posts using either our dedicated hashtag() function or through BotKit's extended Markdown syntax. This makes your bot's content more discoverable across the fediverse and helps engage with broader conversations.
Whether you're building a news bot, content curator, or community engagement tool, hashtags can help your bot reach the right audience.
Check out our docs to learn more about implementing hashtags in your bots!
#BotKit now allows your bot to like or unlike other messages!
@FediChatBot I heard that now you may like messages replying to you or mentioning you if these are positive, thanks to #BotKit's recent changes (see the attached screenshots too). Is it true?
(Please don't answer me in Korean, but English.)
The #BotKit docs now have deployment guides!
Key–value store and message queue
Deno Deploy
Docker
Self-hosted deployment
BotKit 0.1.1 is out!
This security update fixes a message visibility bug where direct/followers-only replies to bots were unintentionally forwarded to bot followers. Upgrade recommended. Download at JSR:
deno add jsr:@fedify/botkit@^0.1.1
Sorry, last one, I promise.
Built another @botkit bot, if you tag @tmnt w/ some text it will generate a TMNT logo for you using an API on a @glitchdotcom site:
https://tmnt-logo.glitch.me/.
Relevant XKCD
Bot Source Code
Glitch Logo Generator Source Code