메인 콘텐츠로 건너뛰기

개요

revolution/laravel-bluesky는 AT Protocol(Bluesky)을 Laravel에서 다루기 위한 패키지입니다. Facade는 Revolution\Bluesky\Facades\Bluesky입니다. 게시 작성, 피드 취득, 검색, 미디어 게시 등을 Laravel의 HTTP 클라이언트에 가까운 형태로 다룰 수 있습니다.

요건

  • PHP >= 8.3
  • Laravel >= 12.x

설치

composer require revolution/laravel-bluesky

환경 변수

App Password 인증을 사용하는 경우에는 .env를 설정합니다.
BLUESKY_IDENTIFIER=your-handle.bsky.social
BLUESKY_APP_PASSWORD=xxxx-xxxx-xxxx-xxxx

퀵 스타트

첫 게시

use Revolution\Bluesky\Facades\Bluesky;

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

TextBuilder로 링크와 태그 다루기

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);
searchPosts()는 API의 일시적인 제한으로 인해 현재 미인증 상태에서는 동작하지 않습니다. 검색을 사용할 때에도 인증된 세션을 사용하세요.

문서

Basic client

App Password / OAuth, 게시, 미디어, 리플라이, 인용, 피드, 검색을 확인합니다.

Socialite

AT Protocol OAuth(DPoP)를 사용한 Bluesky 고유의 Socialite 설정과 사용법.

알림 채널

Laravel Notification 채널로서 Bluesky에 게시·DM을 전송합니다.

Feed Generator

자체 알고리즘 피드를 생성·공개합니다.

참고 링크

마지막 수정일 2026년 7월 13일

관련 항목

Laravel Bluesky