承接 zynqa/filament-confluence 相关项目开发

从需求分析到上线部署,全程专人跟进,保证项目质量与交付效率

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

zynqa/filament-confluence

最新稳定版本:0.1.2

Composer 安装命令:

composer require zynqa/filament-confluence

包简介

Confluence integration for FilamentPHP

README 文档

README

A Laravel/Filament package that provides Confluence knowledge base integration. Display Confluence pages directly in your Filament admin panel with user-based access control.

Features

  • ✅ Dual API support: Direct Confluence REST API or MCP integration
  • ✅ User-based space assignment
  • ✅ Admin-curated page sharing with automatic sub-page inclusion
  • ✅ Read-only viewing with markdown support
  • ✅ No database storage - uses Sushi for virtual Eloquent models
  • ✅ Comprehensive caching strategy
  • ✅ Filament v3 compatible

Requirements

  • PHP 8.2+
  • Laravel 11+
  • Filament 3.2+
  • Spatie Laravel Settings 3.0+

Installation

Step 1: Install the package

composer require zynqa/filament-confluence

Step 2: Publish configuration and migrations

php artisan vendor:publish --tag="filament-confluence-config"
php artisan vendor:publish --tag="filament-confluence-migrations"

Step 3: Run migrations

php artisan migrate

Step 4: Add trait to User model

use Zynqa\FilamentConfluence\Models\Concerns\HasConfluenceSpaces;

class User extends Authenticatable
{
    use HasConfluenceSpaces;

    protected $fillable = [
        // ... your existing fields
        'confluence_space_keys',
    ];
}

Step 5: Register the plugin

In your AppPanelProvider.php:

use Zynqa\FilamentConfluence\FilamentConfluencePlugin;

public function panel(Panel $panel): Panel
{
    return $panel
        ->plugins([
            FilamentConfluencePlugin::make(),
        ]);
}

Configuration

Environment Variables

For Direct API Connection:

CONFLUENCE_CONNECTION=direct
CONFLUENCE_URL=https://your-domain.atlassian.net
CONFLUENCE_EMAIL=your-email@example.com
CONFLUENCE_API_TOKEN=your-api-token
CONFLUENCE_AUTH_TYPE=basic
CONFLUENCE_CONTENT_FORMAT=markdown

For MCP Connection:

CONFLUENCE_CONNECTION=mcp
CONFLUENCE_CLOUD_ID=your-cloud-id
CONFLUENCE_CONTENT_FORMAT=markdown

Assigning Spaces to Users

Update your UserResource to include the Confluence space assignment field:

Forms\Components\Select::make('confluence_space_keys')
    ->label('Confluence Spaces')
    ->multiple()
    ->options(function () {
        $service = app(\Zynqa\FilamentConfluence\Services\ConfluenceService::class);
        $spaces = $service->getSpaces();

        return collect($spaces)->mapWithKeys(fn($s) => [
            $s['key'] => $s['key'] . ' - ' . $s['name']
        ]);
    })
    ->searchable(),

Admin-Shared Pages

Configure shared pages in Settings > Confluence:

  • Add page IDs that should be visible to all users
  • All sub-pages (descendants) are automatically included

Usage

Once configured, users will see a "Knowledge Base" menu item in Filament where they can:

  • Browse pages from their assigned Confluence spaces
  • View admin-shared pages and their descendants
  • Read content in markdown format
  • Click "Open in Confluence" to edit in Confluence

Architecture

This package uses:

  • Sushi: Virtual Eloquent models without database storage
  • Dual API Support: Choose between direct Confluence API or MCP delegation
  • Per-User Caching: Each user gets their own cached page set
  • Space-Based Access: Users see only pages from their assigned spaces

Security

  • Read-only access - all editing happens in Confluence
  • User-scoped data - each user only sees their assigned spaces
  • Admin-controlled shared pages
  • Comprehensive error logging

License

MIT

Credits

  • Built for FilamentPHP
  • Uses Spatie Laravel Settings
  • Powered by Sushi by Caleb Porzio

统计信息

  • 总下载量: 40
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 3
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 0
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2026-02-10

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固