Overview
AppFlowy is designed with extensibility in mind. While the plugin system is still evolving, AppFlowy supports various plugin types and integrations to enhance your workspace capabilities.The plugin architecture is actively being developed. Check the AppFlowy GitHub repository for the latest plugin capabilities.
Plugin System Architecture
Current Plugin Types
AppFlowy’s plugin system supports several core plugin types:Editor Plugins
Enhance document editing with custom blocks and tools
AI Plugins
Integrate AI services and local AI models
Database Plugins
Add custom views and data processing to databases
View Plugins
Create custom view types (Document, Grid, Board, Calendar, Chat)
Plugin Architecture
AppFlowy plugins are built using:- Dart/Flutter: For UI and cross-platform functionality
- Rust: For backend logic and performance-critical operations
- Plugin API: Well-defined interfaces for plugin integration
Plugin development requires familiarity with AppFlowy’s codebase. See the development documentation for technical details.
Built-in Editor Plugins
AppFlowy comes with several built-in editor plugins:Content Block Plugins
Code Block
Syntax-highlighted code with 100+ language support
- Line numbers (since v0.5.5)
- Multiple themes
- Copy code functionality
Callout Block
Highlight important information with custom icons and colors
- Custom icon selection (since v0.8.7)
- Nested lists support
- Multiple color schemes
Math Equation
Inline and block math equations using LaTeX
- Full LaTeX syntax support
- Inline math equations (since v0.2.6)
Media Plugins
Image Gallery
Drag-and-drop image support with gallery view (v0.6.6)
Video Embed
Embed videos in documents (v0.5.9)
File Upload
Attach files to documents and databases
Unsplash
Browse and insert images from Unsplash (v0.3.5)
Table Plugins
Simple Table (since v0.7.8):- Insert lists, images, quotes, callouts, and code blocks in cells
- Drag to move rows or columns
- Toggle header rows/columns
- Distribute columns evenly
- Adjust to page width
- Available on mobile (v0.7.9)
AI Plugins
AppFlowy supports multiple AI integrations:Cloud AI Providers
OpenAI
GPT-4, GPT-4.1, GPT-4.1-mini, GPT-5
Claude
Claude 3.7 Sonnet and other Anthropic models
DALL-E
AI image generation from text prompts (v0.8.1)
AppFlowy AI
Built-in AI service optimized for AppFlowy
Local AI Plugins
Ollama Integration (since v0.8.7):- Free local AI processing
- No internet required
- Privacy-focused
- Support for custom models
Install Ollama
Download and install Ollama from ollama.ai
Local AI is perfect for privacy-sensitive work and offline environments, especially in Vault Workspaces.
AI Features
- Ask AI: Get AI assistance directly in documents
- AI Chat: Have conversations with AI, including chat with files (PDF, Markdown, TXT)
- AI Writer: Generate content with formatting options (list, table, text with images)
- Custom Prompts: Load custom AI prompts from database pages (v0.9.2)
- Prompt Library: Access pre-built prompts for common tasks (v0.9.1)
Database Plugins
View Type Plugins
AppFlowy databases support multiple view types:Grid
Traditional spreadsheet-style database
Board
Kanban board for visual project management
Calendar
Timeline view for date-based information
Gallery
Visual card-based layout
Field Type Plugins
Custom field types in databases:- Text, Number, Date, Checkbox
- Single-select, Multi-select
- URL, Email, Phone
- Files & Media (v0.6.9)
- Relation (v0.5.3)
- Checklist (v0.0.8)
- Created At, Updated At (v0.2.0)
Each field type comes with its own editor and filter options, effectively acting as a plugin.
Integration Plugins
Publishing Plugins
Publish to Web (since v0.6.3):- Publish documents and databases to the web
- Custom URLs for published pages (v0.7.3)
- Navigation menu in published sites (v0.6.9)
- Share links for easy distribution
Import/Export Plugins
Markdown
Import and export markdown files
CSV
Import up to 1,000 rows (v0.6.8)
HTML
Export documents as HTML
Export documents as PDF
Authentication Plugins
Multiple sign-in methods:- Email & Password (v0.9.1)
- Magic Link (v0.5.5)
- One-Time Password (OTP) (v0.8.9)
- Apple Sign-in (v0.6.9)
- Google Sign-in
- Anonymous Sign-in (v0.4.4)
Theme Plugins
AppFlowy supports dynamic theme loading:Built-in Themes
- Default (Light & Dark)
- Dandelion (v0.3.6)
- Lemonade (v0.3.6)
- Community themes
Custom Theme Plugin
Check the AppFlowy Community Themes repository for user-created themes.
Developing Custom Plugins
Plugin Development Resources
- Source Code:
frontend/appflowy_flutter/lib/startup/plugin/ - Plugin Types: See
plugin.dart:13for supported plugin types - Plugin Builder: Implement
PluginBuilderinterface - Registration: Use
registerPlugin()to add your plugin
Plugin Structure
Plugin Example Structure
Creating a Simple Plugin
Plugin API
Key interfaces for plugin development:- PluginBuilder: Defines plugin metadata and creation
- PluginWidgetBuilder: Handles UI rendering
- PluginNotifier: Manages plugin lifecycle events
- PluginContext: Provides context and callbacks
See
frontend/appflowy_flutter/lib/startup/plugin/plugin.dart for complete API documentation.Community Plugins
Finding Plugins
Community plugins are shared via:- GitHub: AppFlowy organization and user repositories
- Discord: AppFlowy community Discord server
- Forum: AppFlowy community discussions
Installing Community Plugins
Plugin Configuration
AI Plugin Settings
Settings → AI:- Select AI provider (OpenAI, Claude, AppFlowy AI, Local AI)
- Configure API keys
- Choose models
- Set embedding models (for Vault Workspaces)
Plugin Status Indicator
In AI settings, you can see plugin status:- ✅ Connected and ready
- ⚠️ Configuration needed
- ❌ Error or disconnected
Plugin status indicators help you troubleshoot integration issues quickly.
Future Plugin Capabilities
AppFlowy’s plugin system is actively being expanded:API Integrations
Connect to external services and APIs
Custom Views
Create entirely new view types
Data Processors
Add custom data transformation logic
Workflow Automation
Automate tasks and processes
Follow the AppFlowy blog and GitHub discussions for plugin system updates.
Troubleshooting Plugins
Plugin not loading
Plugin not loading
- Check plugin compatibility with your AppFlowy version
- Verify plugin files are in the correct location
- Review logs for error messages
- Try reinstalling the plugin
AI plugin not responding
AI plugin not responding
- Check API key configuration
- Verify internet connection (for cloud AI)
- Ensure Ollama is running (for local AI)
- Check plugin status indicator in settings
Custom theme not applying
Custom theme not applying
- Validate JSON syntax in theme file
- Check all required color values are present
- Try default theme first, then reapply custom
- Restart AppFlowy after uploading
Plugin conflicts
Plugin conflicts
- Disable plugins one by one to identify conflicts
- Check for duplicate plugin registrations
- Update all plugins to latest versions
- Report conflicts to plugin developers
Contributing Plugins
Want to create a plugin for AppFlowy?Join the Community
Connect with other developers on Discord
Check the CONTRIBUTING.md guide for contribution guidelines.
Next Steps
Customization
Customize themes, fonts, and appearance
Data Export
Learn about exporting and backing up data