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 자체 알고리즘 피드를 생성·공개합니다.
참고 링크