fullstack/redbird
Composer 安装命令:
composer require fullstack/redbird
包简介
A Laravel SaaS package with Filament admin panel, user management, and subscription billing
README 文档
README
A comprehensive Laravel SaaS package with Filament admin panel, user management, and subscription billing.
🚀 Recent Updates
- v0.2.5 - Fixed Packagist version synchronization and improved auto-release workflow
- v0.2.4 - Enhanced Git identity configuration in CI/CD pipeline
- v0.2.0 - Added multi-panel support with admin, tenant, and member panels
- v0.1.0 - Initial release with core SaaS functionality
Features
- 🔥 Filament Admin Panel - Beautiful, modern admin interface
- 👥 User Management - Complete user registration, authentication, and profile management
- 🔐 Role & Permission System - Powered by Spatie Laravel Permission
- 💳 Subscription Billing - Laravel Cashier integration with Stripe
- 🏢 Multi-tenancy Ready - Optional multi-tenant architecture
- 📧 Email Verification - Built-in email verification system
- 🔒 Two-Factor Authentication - Optional 2FA support
- 🚀 API Ready - RESTful API endpoints
- 📊 Dashboard Widgets - MRR charts, subscription stats, and product analytics
- 🎨 Customizable UI - Publishable views and configurable themes
- 🔧 Automated Releases - CI/CD pipeline with automated versioning and deployment
- 📦 Packagist Integration - Automatic package updates and distribution
Requirements
- PHP 8.1 or higher
- Laravel 10.0 or higher
- MySQL/PostgreSQL database
User Model Requirements
The package uses your application's default User model (configured in config/auth.php). Your User model must include the Spatie Permission traits to enable role management:
<?php namespace App\Models; use Illuminate\Foundation\Auth\User as Authenticatable; use Spatie\Permission\Traits\HasRoles; class User extends Authenticatable { use HasRoles; // ... your existing code }
If you don't have the Spatie Permission package installed, the installation command will install it for you.
Installation
1. Install the Package
composer require fullstack/redbird
2. Run the Installation Command
php artisan redbird:install
This command will:
- Publish configuration files
- Publish and run migrations
- Seed roles and permissions from config
- Generate Filament panel providers from config
- Register panel providers in bootstrap/providers.php (Laravel 11+) or config/app.php
- Publish Filament assets (CSS, JS) for proper styling
- Configure Laravel Permissions
- Set up Laravel Cashier (optional)
3. Create an Admin User
php artisan make:filament-user
4. Configure Your Environment
Add the following to your .env file:
# Redbird Configuration REDBIRD_APP_NAME="Your SaaS App" REDBIRD_ADMIN_PATH=admin # Stripe Configuration (if using subscriptions) STRIPE_KEY=your-stripe-publishable-key STRIPE_SECRET=your-stripe-secret-key STRIPE_WEBHOOK_SECRET=your-stripe-webhook-secret # Feature Flags REDBIRD_SUBSCRIPTIONS_ENABLED=true REDBIRD_USER_REGISTRATION=true REDBIRD_EMAIL_VERIFICATION=true
5. Troubleshooting CSS Issues
If you experience broken CSS in the admin panel, ensure Filament assets are properly published:
# Publish Filament assets manually if needed php artisan vendor:publish --tag=filament-assets # Clear cache and recompile assets php artisan config:clear php artisan cache:clear php artisan view:clear
Usage
Accessing the Admin Panel
Visit /admin (or your configured admin path) to access the Filament admin panel.
Dashboard Widgets
Redbird includes several built-in dashboard widgets for SaaS analytics:
- MRR Stats Widget - Monthly Recurring Revenue tracking
- MRR Chart Widget - Visual MRR trends over time
- Active Subscriptions Widget - Real-time subscription count
- Product Stats Widget - Product performance metrics
- Price Stats Widget - Pricing analytics
Subscription Management
The package includes comprehensive subscription management:
// Create a subscription $user->newSubscription('default', 'price_123')->create(); // Check subscription status if ($user->subscription('default')->active()) { // User has active subscription } // Handle subscription changes $user->subscription('default')->swap('price_456');
Multi-Panel Architecture
Redbird supports multiple Filament panels for different user types:
- Admin Panel (
/admin) - For super admins and system management - Tenant Panel (
/tenant) - For tenant/organization management - Member Panel (
/member) - For end users and customers
Each panel can have its own:
- Authentication guard
- Domain/subdomain
- Custom styling
- Specific permissions
Configuration
The package configuration can be found in config/redbird.php. You can customize:
- Panel Settings - Define multiple Filament panels with paths, domains, and guards
- Subscription management
- Multi-tenancy options
- Feature flags
- Default permissions and roles
Panel Configuration
Define your Filament panels in the panels section of the config:
'panels' => [ 'admin' => [ 'path' => env('REDBIRD_ADMIN_PATH', 'admin'), 'domain' => env('REDBIRD_ADMIN_DOMAIN', null), 'guard' => ['admin'], ], 'tenant' => [ 'path' => env('REDBIRD_TENANT_PATH', 'tenant'), 'domain' => env('REDBIRD_TENANT_DOMAIN', null), 'guard' => ['tenant'], ], 'member' => [ 'path' => env('REDBIRD_MEMBER_PATH', 'member'), 'domain' => env('REDBIRD_MEMBER_DOMAIN', null), 'guard' => ['web'], ], ],
During installation, this will generate:
app/Providers/Filament/AdminPanelProvider.php→/adminapp/Providers/Filament/TenantPanelProvider.php→/tenantapp/Providers/Filament/MemberPanelProvider.php→/member
Publishing Assets
You can publish specific assets using tags:
# Publish configuration only php artisan vendor:publish --tag=redbird-config # Publish migrations only php artisan vendor:publish --tag=redbird-migrations # Publish seeders only php artisan vendor:publish --tag=redbird-seeders # Publish views only php artisan vendor:publish --tag=redbird-views # Publish Filament assets (CSS, JS) php artisan vendor:publish --tag=filament-assets # Publish Filament resources for customization php artisan vendor:publish --tag=redbird-filament # Publish view components for customization php artisan vendor:publish --tag=redbird-components # Publish attributes for customization php artisan vendor:publish --tag=redbird-attributes # Force overwrite existing files php artisan redbird:install --force
Note: The installation command will offer to publish Filament resources automatically. These resources include all the admin panel components and can be customized after publishing.
Commands
php artisan redbird:install- Install the packagephp artisan redbird:install --force- Reinstall and overwrite existing files
Testing
vendor/bin/phpunit
Troubleshooting
Common Issues
User Model Missing HasRoles Trait If you get "Call to undefined method assignRole()" errors:
- Ensure your User model includes
use Spatie\Permission\Traits\HasRoles; - Run
php artisan redbird:installagain to set up roles
Existing Application Conflicts The installation command will detect potential conflicts in existing applications:
- Existing User models
- Already installed packages (Filament, Spatie Permissions, Cashier)
- Conflicting database tables
- Existing roles and permissions
Filament Panel Not Loading
- Ensure you've run
php artisan redbird:install - Check that panel providers are registered in your app
- Verify your
.envconfiguration matches the panel settings
License
The MIT License (MIT). Please see License File for more information.
fullstack/redbird 适用场景与选型建议
fullstack/redbird 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 23 次下载、GitHub Stars 达 0, 最近一次更新时间为 2025 年 06 月 26 日, 在 PHP 生态内属于活跃度较高的组件。
它主要适用于以下技术方向: 「admin」 「subscription」 「laravel」 「saas」 「billing」 「filament」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。
我们在过去多个企业项目中使用过 fullstack/redbird 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 fullstack/redbird 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
与 fullstack/redbird 相关的其它包
同方向 / 同关键字的高下载量 PHP Composer 包推荐,方便对比选型:
2lenet/EasyAdminPlusBundle
MaxAl Subscriptions is a flexible plans and subscription management system for Laravel, with the required tools to run your SAAS like services efficiently. It's simple architecture, accompanied by powerful underlying to afford solid platform for your business.
Analysis module for finding problematical shop data.
Rinvex Subscriptions is a flexible plans and subscription management system for Laravel, with the required tools to run your SAAS like services efficiently. It's simple architecture, accompanied by powerful underlying to afford solid platform for your business.
Rinvex Subscriptions is a flexible plans and subscription management system for Laravel, with the required tools to run your SAAS like services efficiently. It's simple architecture, accompanied by powerful underlying to afford solid platform for your business.
Rinvex Subscriptions is a flexible plans and subscription management system for Laravel, with the required tools to run your SAAS like services efficiently. It's simple architecture, accompanied by powerful underlying to afford solid platform for your business.
统计信息
- 总下载量: 23
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 21
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2025-06-26