> ## Documentation Index
> Fetch the complete documentation index at: https://kawax.biz/llms.txt
> Use this file to discover all available pages before exploring further.

# Laravel Bluesky

> 彙整 revolution/laravel-bluesky 的概觀、需求、安裝、初始設定，直到完成第一則貼文的流程。

## 概觀

[revolution/laravel-bluesky](https://github.com/invokable/laravel-bluesky) 是一款讓 Laravel 能操作 AT Protocol（Bluesky）的套件。

Facade 為 `Revolution\Bluesky\Facades\Bluesky`。可用接近 Laravel HTTP client 的方式處理貼文建立、feed 取得、搜尋、媒體貼文等操作。

## 需求

* PHP `>= 8.3`
* Laravel `>= 12.x`

## 安裝

```bash theme={null}
composer require revolution/laravel-bluesky
```

## 環境變數

若使用 App Password 認證，需設定 `.env`。

```dotenv theme={null}
BLUESKY_IDENTIFIER=your-handle.bsky.social
BLUESKY_APP_PASSWORD=xxxx-xxxx-xxxx-xxxx
```

## 快速上手

### 第一則貼文

```php theme={null}
use Revolution\Bluesky\Facades\Bluesky;

$response = Bluesky::login(
    identifier: config('bluesky.identifier'),
    password: config('bluesky.password'),
)->post('Hello Bluesky');
```

### 以 TextBuilder 處理連結與標籤

```php theme={null}
use Revolution\Bluesky\Facades\Bluesky;
use Revolution\Bluesky\Record\Post;
use Revolution\Bluesky\RichText\TextBuilder;

$post = Post::build(function (TextBuilder $builder) {
    $builder->text('Hello Bluesky')
        ->newLine(count: 2)
        ->link('https://bsky.app/')
        ->newLine()
        ->tag('#Bluesky');
});

$response = Bluesky::login(
    identifier: config('bluesky.identifier'),
    password: config('bluesky.password'),
)->post($post);
```

<Warning>
  `searchPosts()` 因 API 暫時的限制，目前在未認證的情況下無法使用。使用搜尋時也請透過已認證的 session。
</Warning>

## 文件

<Columns cols={2}>
  <Card title="Basic client" href="/zh-TW/packages/laravel-bluesky/basic-client" icon="terminal-square">
    了解 App Password / OAuth、貼文、媒體、回覆、引用、feed、搜尋等。
  </Card>

  <Card title="Socialite" href="/zh-TW/packages/laravel-bluesky/socialite" icon="shield-check">
    使用 AT Protocol OAuth（DPoP）的 Bluesky 專屬 Socialite 設定與使用方式。
  </Card>

  <Card title="通知頻道" href="/zh-TW/packages/laravel-bluesky/notification" icon="bell">
    以 Laravel Notification 頻道向 Bluesky 發送貼文與 DM。
  </Card>

  <Card title="Feed Generator" href="/zh-TW/packages/laravel-bluesky/feed-generator" icon="rss">
    建立並公開自訂演算法 feed。
  </Card>
</Columns>

## 參考連結

* GitHub：[invokable/laravel-bluesky](https://github.com/invokable/laravel-bluesky)
* DeepWiki：[invokable/laravel-bluesky](https://deepwiki.com/invokable/laravel-bluesky)


## Related topics

- [Socialite - Laravel Bluesky](/zh-TW/packages/laravel-bluesky/socialite.md)
- [Bot 教學 - Laravel Bluesky](/zh-TW/packages/laravel-bluesky/bot-tutorial.md)
- [Basic client - Laravel Bluesky](/zh-TW/packages/laravel-bluesky/basic-client.md)
- [通知頻道 - Laravel Bluesky](/zh-TW/packages/laravel-bluesky/notification.md)
- [認證方式比較 - Laravel Bluesky](/zh-TW/packages/laravel-bluesky/authentication.md)
