技術 5 分鐘閱讀

2026 年 Laravel 生態系總覽:最推薦的 10 個套件

前言

做了一年多的接案,我歸納出這 10 個 Laravel 套件是幾乎每個專案都會用到的。2026 年的 Laravel 生態系比以前更成熟了,以下按照使用頻率排序。

1. Spatie Laravel Permission

權限管理的業界標準:

$user->assignRole('admin');
$user->givePermissionTo('edit articles');

// Blade 模板中
@can('edit articles')
    <button>編輯</button>
@endcan

幾乎每個有會員系統的專案都需要。

2. Laravel Sanctum

API 認證首選,比 Passport 輕量許多:

$token = $user->createToken('api-token')->plainTextToken;

// 搭配 Middleware
Route::middleware('auth:sanctum')->group(function () {
    // 受保護的路由
});

3. Spatie Laravel Media Library

處理檔案上傳和圖片轉換的神器:

$product->addMediaFromRequest('image')
    ->usingFileName('product.webp')
    ->toMediaCollection('images');

// 取得縮圖
$product->getFirstMediaUrl('images', 'thumb');

4. Laravel Debugbar

開發環境必裝的除錯工具:

composer require barryvdh/laravel-debugbar --dev

可以即時看到 SQL 查詢數量、記憶體使用量、路由資訊,是效能優化的好幫手。

5. Spatie Laravel Backup

自動備份資料庫和檔案:

php artisan backup:run

搭配排程自動執行,接案專案的必備保險。

6. Laravel Excel (Maatwebsite)

匯出匯入 Excel 檔案:

return Excel::download(new OrdersExport, 'orders.xlsx');

客戶最愛的功能之一,幾乎每個後台都會需要。

7. Spatie Laravel Sitemap

自動產生 sitemap.xml,對 SEO 很重要:

SitemapGenerator::create('https://example.com')->writeToFile(public_path('sitemap.xml'));

8. Laravel Horizon

Redis 佇列的管理介面,適合需要背景任務的專案。視覺化監控佇列狀態,比 queue:work 方便太多。

9. Spatie Laravel Data

把 Data Transfer Object 變得優雅:

class ProductData extends Data
{
    public function __construct(
        public string $name,
        public int $price,
        public ?string $description,
    ) {}
}

// 自動從 Request 轉換
$data = ProductData::from($request);

搭配 TypeScript 還能自動產生前端型別。

10. Pest PHP

測試框架新選擇,語法比 PHPUnit 簡潔很多:

test('user can create product', function () {
    $user = User::factory()->create();

    $this->actingAs($user)
        ->post('/products', ['name' => 'Test', 'price' => 100])
        ->assertStatus(201);

    expect(Product::count())->toBe(1);
});

如何選擇套件?

根據我的經驗,選擇套件要注意:

  • 維護狀態:最後更新時間、GitHub Stars
  • 文件品質:Spatie 系列通常做得最好
  • 社群支援:Stack Overflow、GitHub Issues 的活躍度
  • 與 Laravel 版本相容性

小結

這些套件能大幅加速開發,但也不要為了用套件而用套件。需求簡單的話,Laravel 內建功能就夠了。搭配 Docker 環境CI/CD,就能建立一個非常完整的開發流程。

如果你需要類似的系統,歡迎聯繫討論。

#Laravel #套件推薦
Thousand Lab

Thousand Lab