laravel-afterburner/jetstream
Composer 安装命令:
composer create-project laravel-afterburner/jetstream
包简介
A production-ready Laravel application template featuring teams, custom roles & permissions, audit logging, and more. Built as a self-contained Jetstream successor with everything you need out of the box.
README 文档
README
A production-ready Laravel application template featuring teams, custom roles & permissions, audit logging, and more. Built as a self-contained Jetstream successor with everything you need out of the box.
What is Afterburner?
Afterburner Jetstream is a complete Laravel application starter template that provides a powerful multi-tenancy foundation. This template includes everything you need to build team-based applications: authentication, team management, custom roles and permissions, audit logging, team announcements, and more.
Built as a self-contained successor to Laravel Jetstream, Afterburner vendors all necessary functionality directly into your application, giving you complete control without external dependencies. Perfect for SaaS applications, team collaboration tools, or any multi-tenant application requiring fine-grained access control.
Features
Authentication & Security
-
Fortify-based Authentication - Complete login, registration, and password reset system
-
Email Verification - Built-in email verification workflow
-
Two-Factor Authentication (2FA) - TOTP-based two-factor authentication
-
WebAuthn/Biometric Authentication - Passwordless authentication via WebAuthn
-
Session Management - Secure session handling with device management
-
API Tokens - Sanctum-powered API token authentication
Multi-Tenancy & Teams
-
Team/Organization Management - Full CRUD operations for teams
-
Team Switching - Users can belong to multiple teams and switch between them
-
Team Invitations - Email-based invitation system with expiration
-
Team Branding - Customizable branding per team (logos, colors, etc.)
-
Team Timezone Management - Per-team timezone configuration
-
Personal Teams - Optional personal team feature (configurable)
Roles & Permissions
-
Custom Roles System - Flexible role management with hierarchy
-
Permission Management - Fine-grained permission system
-
Default Role Assignment - Automatic role assignment for new team members
-
Role Templates - Pre-configured role templates (team, company, strata, organization)
-
Member Limits - Configurable member limits per role
-
Role Hierarchy - Hierarchical role system for permission inheritance
Team Features
-
Team Announcements - Publishable announcements per team
-
Scheduled publishing
-
Email notifications
-
Role-based targeting
-
Read/unread tracking
-
-
Team Members Management - Add, remove, and update team members
-
Member Roles - Assign multiple roles to team members
Audit & Logging
-
Comprehensive Audit Logging - Track all user actions and model changes
-
Audit Categories - Organized audit logs by category
-
Impersonation Tracking - Track when admins impersonate users
-
Audit Archiving - Archive or export old audit logs
-
Model Change Tracking - Automatic tracking of model changes
-
Request ID Tracking - Track requests across audit logs
Feature Flags
-
Runtime Feature Toggles - Database-driven feature flags
-
Config-Based Defaults - Fallback to config for deployment-time defaults
-
Hybrid Approach - Runtime overrides with config fallbacks
User Management
-
Profile Management - Update name, email, password
-
Profile Photos - Upload and manage profile photos
-
Timezone Preferences - User-level timezone settings
-
Account Deletion - User-initiated account deletion
-
System Admin - System administrator functionality with impersonation
UI & Frontend
-
Livewire 3 - Modern reactive UI components
-
Tailwind CSS - Utility-first CSS framework
-
Vite - Next-generation frontend build tool
-
Alpine.js - Lightweight JavaScript framework
-
Responsive Design - Mobile-first responsive layouts
Additional Features
-
Terms & Privacy Policy - Accept terms and privacy policy on registration
-
Email Notifications - Team invitations, announcements, and more
-
Flash Messages - Banner-style flash notifications
-
User Agent Detection - Enhanced browser and platform detection
-
Queued Jobs - Background job processing for audit logging
Developer Experience
-
Full Laravel Application - Complete Laravel installation ready to use
-
No External Dependencies - Jetstream functionality vendorized
-
Standard Laravel Structure - Follows Laravel conventions throughout
-
Artisan Commands - Helpful commands for common tasks
-
Comprehensive Events - Event-driven architecture
-
Service Providers - Well-organized service provider structure
Quick Start
Using the Installer (Recommended)
# Install globally composer global require laravel-afterburner/installer # Create new project afterburner new my-project
Using Composer Directly
composer create-project laravel-afterburner/jetstream my-project
cd my-project
After installation, you'll need to:
- Copy
.env.exampleto.envand configure your environment - Run migrations:
php artisan migrate - Seed a System Admin account (optional):
php artisan db:seed --class=SystemAdminSeeder - Seed roles (optional):
php artisan db:seed --class=RolesSeeder
Note: If you plan to use WebAuthn/Biometric Authentication, ensure your development site is served over HTTPS. WebAuthn APIs are only available in secure contexts (HTTPS or localhost). If you're testing on a non-localhost domain, you'll need to set up SSL/TLS certificates for your development environment.
Requirements
-
PHP ^8.2
-
Laravel ^11.0
-
Composer
Configuration
Environment Variables
Afterburner uses the following environment variables (see .env.example for details):
AFTERBURNER_ENTITY_LABEL- Label for teams/organizations (default:organization)AFTERBURNER_ENTITY_URL_SLUG- Optional. URL segment for entity routes (default: plural of entity_label, e.g.household→households)AFTERBURNER_APP_TYPE- Application type (default:Management App)AFTERBURNER_GUARD- Authentication guard (default:sanctum)AFTERBURNER_PROFILE_PHOTO_DISK- Profile photo storage disk (default:public)
Configuration File
Main configuration is in config/afterburner.php. This file controls:
- Entity label and application naming
- Feature flags (including email verification from Laravel Fortify)
- Feature options (e.g., 2FA configuration)
- Authentication settings
- Profile photo storage
WebAuthn/Biometric Authentication
WebAuthn (biometric authentication) requires a secure context to function:
- HTTPS: Production and staging environments must use HTTPS
- Localhost: Development on
localhost,127.0.0.1, or[::1]may work over HTTP - Non-localhost HTTP: WebAuthn APIs are disabled by browsers on non-localhost HTTP connections
If users encounter errors when registering biometric devices, ensure your site is served over HTTPS (or use localhost for development). The application will display a helpful error message if WebAuthn is unavailable due to insecure contexts.
WebAuthn configuration is managed in config/webauthn.php:
WEBAUTHN_NAME- Relying party name (defaults to app name)WEBAUTHN_ID- Relying party ID (domain)WEBAUTHN_ORIGINS- Additional allowed origins (comma-separated)
Feature Flags
Most features are managed in config/afterburner.php, including all Afterburner-specific features and email verification from Laravel Fortify. Other Fortify authentication features (registration, password reset, etc.) are configured in config/fortify.php.
This approach provides:
- Unified control for Afterburner and email verification features
- Consistent runtime toggling via the database for managed features
- Standard Laravel Fortify configuration for other authentication features
Feature flags can be managed in two ways:
- Config File (
config/afterburner.php) - Deployment-time defaults - Database (
feature_flagstable) - Runtime overrides
The Features class provides a unified interface:
use App\Support\Features; // Afterburner features if (Features::hasTeamFeatures()) { // Team features are enabled } if (Features::hasPersonalTeams()) { // Personal teams feature is enabled } // Email verification (managed through Afterburner) if (Features::hasEmailVerification()) { // Email verification is required }
Note: Email verification is controlled through Afterburner config and can be toggled at runtime via the feature_flags table. Other Fortify features (registration, password reset, update profile, update passwords) are configured directly in config/fortify.php.
User Model
The template includes a complete User model with all necessary traits:
HasAfterburnerRoles- Role and permission managementHasTeams- Team membership and switchingHasPermissions- Permission checkingHasProfilePhoto- Profile photo managementHasApiTokens- API token managementTwoFactorAuthenticatable- 2FA supportWebAuthnAuthentication- Biometric authentication
Role System
The template includes a default role system that automatically assigns roles to users:
- Default Roles: Identified by
is_default => truein therolestable - Automatic Assignment: Default role is assigned when:
- A user registers and a team is created
- A user is added to a team
- A user accepts a team invitation
- A user creates a new team
To set up roles, use the templated roles in the RolesSeeder or update it with your own:
// database/seeders/RolesSeeder.php public function run(): void { Role::create([ 'name' => 'Member', 'slug' => 'member', 'description' => 'Default team member role', 'is_default' => true, 'hierarchy' => 100, 'badge_color' => 'gray', 'max_members' => null, ]); }
Then run: php artisan db:seed --class=RolesSeeder
Artisan Commands
Afterburner provides several Artisan commands:
Installation & Publishing
afterburner:install- Install add-ons into an existing projectafterburner:publish- Publish all Afterburner assets (config, migrations, views)
Feature Flags
All feature flag commands support the --disabled flag to disable features, and --force to skip confirmation prompts. By default, commands enable the feature.
afterburner:api- Enable/disable API featureafterburner:account-deletion- Enable/disable account deletion featureafterburner:biometric- Enable/disable biometric authentication (WebAuthn) featureafterburner:personal-teams- Enable/disable personal teams featureafterburner:profile-photos- Enable/disable profile photos featureafterburner:team-announcements- Enable/disable team announcements featureafterburner:teams- Enable/disable teams featureafterburner:terms-and-privacy-policy- Enable/disable terms and privacy policy featureafterburner:timezone- Enable/disable timezone management featureafterburner:two-factor-authentication- Enable/disable two-factor authentication feature
Other Commands
afterburner:audit-archive- Archive or delete old audit logs
Testing
Run the test suite:
php artisan test
The template includes comprehensive tests for:
- Team creation and management
- Role and permission system
- User model functionality
- Authentication flows
- API tokens
- Feature flags
- Artisan commands
Architecture
This template follows Laravel conventions:
- Namespace:
App\(standard Laravel project structure) - Type:
project(full Laravel application template) - No Jetstream dependency: All Jetstream features are vendorized
Support Classes
The template includes several utility classes in App\Support:
Agent- User agent detectionAfterburner- Facade-like class for Afterburner functionalityFeatures- Feature flag managementOwnerRole- Helper class for owner roleRole- Support class for role definitions
Documentation (coming soon)
Full documentation is available in the docs directory of this repository. The documentation includes:
-
And more...
Start with the Installation Guide to get up and running quickly.
License
MIT License - see LICENSE file for details.
Support
- GitHub Issues: laravel-afterburner/jetstream/issues
Add-On Packages
Afterburner is designed to be extensible. Check out our add-on packages:
-
Documents - Document management (coming next!)
-
Subscriptions - Stripe subscription management (coming soon)
-
Communications - Enhanced communications (coming soon)
-
Voting - Polls and voting system (coming soon)
-
Meetings - Meeting management (coming soon)
Install add-ons via Composer:
composer require laravel-afterburner/subscriptions php artisan afterburner:subscriptions:install
Contributing
Contributions are welcome! Please see CONTRIBUTING.md for details.
Credits
Afterburner is built on the foundation of Laravel, created by Taylor Otwell. Taylor's contributions to the PHP development community have revolutionized how we build web applications, and his work has profoundly impacted countless developers worldwide—myself included.
This project is inspired by Laravel Jetstream's architecture and user experience, but is implemented as a completely independent, self-contained solution. Afterburner vendors all necessary functionality directly into your application, giving you full control without external dependencies.
Thank you, Taylor, for creating Laravel and the entire ecosystem that makes projects like this possible.
laravel-afterburner/jetstream 适用场景与选型建议
laravel-afterburner/jetstream 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 37 次下载、GitHub Stars 达 0, 最近一次更新时间为 2025 年 11 月 06 日, 在 PHP 生态内属于活跃度较高的组件。
它主要适用于以下技术方向: 「laravel」 「roles」 「permissions」 「multi-tenancy」 「Teams」 「jetstream」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。
我们在过去多个企业项目中使用过 laravel-afterburner/jetstream 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 laravel-afterburner/jetstream 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
与 laravel-afterburner/jetstream 相关的其它包
同方向 / 同关键字的高下载量 PHP Composer 包推荐,方便对比选型:
Laravel Multiauth package
User permissions for MoonShine
This package provides a flexible way to add Role-based Permissions to Laravel 6.x
This package provides a flexible way to add Role-based Permissions to Laravel
Alfabank REST API integration
Library for advanced filesystem functions
统计信息
- 总下载量: 37
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 24
- 依赖项目数: 6
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2025-11-06