🔌 Plugins
Curate.fun has a unique plugin pattern that uses module federation, which allows the bot to load and use remote plugins without needing to install or redeploy. These plugins can extend its functionality, particularly for content ingestion, transformation, distribution.
Plugin Structure
Plugins are defined in two parts in your curate.config.json
:
- Plugin Registration:
{
"plugins": {
"@curatedotfun/telegram": {
"type": "distributor",
"url": "https://unpkg.com/@curatedotfun/telegram@latest/dist/remoteEntry.js"
},
"@curatedotfun/ai-transform": {
"type": "transformer",
"url": "https://unpkg.com/@curatedotfun/ai-transform@latest/dist/remoteEntry.js"
}
}
}
- Plugin Usage in Feeds:
{
"outputs": {
"stream": {
"enabled": true,
"transform": {
"plugin": "@curatedotfun/ai-transform",
"config": {
// Transformer-specific configuration
}
},
"distribute": [
{
"plugin": "@curatedotfun/telegram",
"config": {
// Distributor-specific configuration
}
}
]
}
}
}
Select a plugin from the sidebar to view its detailed configuration and setup instructions.
Available Plugins
Distributors
📱 Telegram Plugin
Distribute curated content to Telegram channels and topics.
📡 RSS Plugin
Generate RSS feeds for your curated content.
📝 Notion Plugin
Sync content to Notion databases with customizable properties.
💾 Supabase Plugin
Store and manage content in your Supabase database.
🌐 NEAR Social Plugin
Post curated content to NEAR Social, a decentralized social network on the NEAR Protocol.
Transformers
🤖 AI Transform
Transform content using OpenRouter's GPT models for AI-powered content enhancement.
📝 Simple Transform
Format content using a template-based approach with customizable placeholders.
Source Plugins
🐦 Twitter Plugin
Monitor and collect content from Twitter.
Object Transform
🔄 Object Transform
Transform data structures using a flexible mapping system.