laravel-bluesky maintained by revolution
- guzzlehttp/guzzle ^7.8
- laravel/socialite ^5.16
- phpseclib/phpseclib ^3.0
- yocto/yoclib-multibase ^1.2
- firebase/php-jwt ^7.0
- php ^8.3
- illuminate/support ^12.0||^13.0
- revolution/atproto-lexicon-contracts 1.0.96
- php ^8.3
- illuminate/support ^12.0||^13.0
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^7.0
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts 1.0.96
- yocto/yoclib-multibase ^1.2
- php ^8.3
- illuminate/support ^12.0||^13.0
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^7.0
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts 1.0.93
- yocto/yoclib-multibase ^1.2
- php ^8.3
- illuminate/support ^12.0||^13.0
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^7.0
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts 1.0.93
- yocto/yoclib-multibase ^1.2
- php ^8.3
- illuminate/support ^12.0||^13.0
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^7.0
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts 1.0.92
- yocto/yoclib-multibase ^1.2
- php ^8.3
- illuminate/support ^12.0||^13.0
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^7.0
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts 1.0.87
- yocto/yoclib-multibase ^1.2
- php ^8.2
- illuminate/support ^11.30||^12.0
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^7.0
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts 1.0.86
- yocto/yoclib-multibase ^1.2
- php ^8.2
- illuminate/support ^11.30||^12.0
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts 1.0.86
- yocto/yoclib-multibase ^1.2
- php ^8.2
- illuminate/support ^11.30||^12.0
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts 1.0.85
- yocto/yoclib-multibase ^1.2
- php ^8.2
- illuminate/support ^11.30||^12.0
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts 1.0.85
- yocto/yoclib-multibase ^1.2
- php ^8.2
- illuminate/support ^11.30||^12.0
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts 1.0.85
- yocto/yoclib-multibase ^1.2
- php ^8.2
- illuminate/support ^11.30||^12.0
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts 1.0.82
- yocto/yoclib-multibase ^1.2
- php ^8.2
- illuminate/support ^11.30||^12.0
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts 1.0.77
- yocto/yoclib-multibase ^1.2
- php ^8.2
- illuminate/support ^11.30||^12.0
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts 1.0.75
- yocto/yoclib-multibase ^1.2
- jetbrains/phpstorm-attributes ^1.2
- php ^8.2
- illuminate/support ^11.30||^12.0
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts 1.0.75
- yocto/yoclib-multibase ^1.2
- jetbrains/phpstorm-attributes ^1.2
- php ^8.2
- illuminate/support ^11.30||^12.0
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts 1.0.73
- yocto/yoclib-multibase ^1.2
- jetbrains/phpstorm-attributes ^1.2
- php ^8.2
- illuminate/support ^11.30||^12.0
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts 1.0.68
- yocto/yoclib-multibase ^1.2
- jetbrains/phpstorm-attributes ^1.2
- php ^8.2
- illuminate/support ^11.30||^12.0
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts 1.0.61
- yocto/yoclib-multibase ^1.2
- jetbrains/phpstorm-attributes ^1.2
- php ^8.2
- illuminate/support ^11.30||^12.0
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts 1.0.58
- yocto/yoclib-multibase ^1.2
- jetbrains/phpstorm-attributes ^1.2
- php ^8.2
- illuminate/support ^11.30||^12.0
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts 1.0.53
- yocto/yoclib-multibase ^1.2
- jetbrains/phpstorm-attributes ^1.2
- php ^8.2
- illuminate/support ^11.30
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts 1.0.49
- yocto/yoclib-multibase ^1.2
- jetbrains/phpstorm-attributes ^1.2
- php ^8.2
- illuminate/support ^11.30
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts 1.0.46
- yocto/yoclib-multibase ^1.2
- jetbrains/phpstorm-attributes ^1.2
- php ^8.2
- illuminate/support ^11.30
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts 1.0.42
- yocto/yoclib-multibase ^1.2
- jetbrains/phpstorm-attributes ^1.2
- php ^8.2
- illuminate/support ^11.30
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts 1.0.41
- yocto/yoclib-multibase ^1.2
- jetbrains/phpstorm-attributes ^1.2
- php ^8.2
- illuminate/support ^11.30
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts 1.0.40
- yocto/yoclib-multibase ^1.2
- jetbrains/phpstorm-attributes ^1.2
- php ^8.2
- illuminate/support ^11.30
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts 1.0.40
- yocto/yoclib-multibase ^1.2
- jetbrains/phpstorm-attributes ^1.2
- php ^8.2
- illuminate/support ^11.30
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts 1.0.40
- yocto/yoclib-multibase ^1.2
- jetbrains/phpstorm-attributes ^1.2
- php ^8.2
- illuminate/support ^11.30
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts 1.0.40
- yocto/yoclib-multibase ^1.2
- jetbrains/phpstorm-attributes ^1.2
- php ^8.2
- illuminate/support ^11.30
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts 1.0.39
- valtzu/guzzle-websocket-middleware ^0.2.0
- yocto/yoclib-multibase ^1.2
- jetbrains/phpstorm-attributes ^1.2
- php ^8.2
- illuminate/support ^11.30
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts 1.0.39
- valtzu/guzzle-websocket-middleware ^0.2.0
- yocto/yoclib-multibase ^1.2
- jetbrains/phpstorm-attributes ^1.2
- php ^8.2
- illuminate/support ^11.30
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts 1.0.37
- valtzu/guzzle-websocket-middleware ^0.2.0
- yocto/yoclib-multibase ^1.2
- jetbrains/phpstorm-attributes ^1.2
- spomky-labs/cbor-php ^3.1
- php ^8.2
- illuminate/support ^11.20
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts 1.0.37
- valtzu/guzzle-websocket-middleware ^0.2.0
- yocto/yoclib-multibase ^1.2
- jetbrains/phpstorm-attributes ^1.2
- spomky-labs/cbor-php ^3.1
- php ^8.2
- illuminate/support ^11.20
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts 1.0.37
- valtzu/guzzle-websocket-middleware ^0.2.0
- yocto/yoclib-multibase ^1.2
- jetbrains/phpstorm-attributes ^1.2
- spomky-labs/cbor-php ^3.1
- php ^8.2
- illuminate/support ^11.20
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts 1.0.37
- valtzu/guzzle-websocket-middleware ^0.2.0
- yocto/yoclib-multibase ^1.2
- jetbrains/phpstorm-attributes ^1.2
- spomky-labs/cbor-php ^3.1
- php ^8.2
- illuminate/support ^11.20
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts 1.0.37
- valtzu/guzzle-websocket-middleware ^0.2.0
- yocto/yoclib-multibase ^1.2
- jetbrains/phpstorm-attributes ^1.2
- spomky-labs/cbor-php ^3.1
- php ^8.2
- illuminate/support ^11.20
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts 1.0.36
- valtzu/guzzle-websocket-middleware ^0.2.0
- yocto/yoclib-multibase ^1.2
- jetbrains/phpstorm-attributes ^1.2
- spomky-labs/cbor-php ^3.1
- php ^8.2
- illuminate/support ^11.20
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts 1.0.36
- valtzu/guzzle-websocket-middleware ^0.2.0
- yocto/yoclib-multibase ^1.2
- jetbrains/phpstorm-attributes ^1.2
- php ^8.2
- illuminate/support ^11.20
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts 1.0.36
- valtzu/guzzle-websocket-middleware ^0.2.0
- yocto/yoclib-multibase ^1.2
- jetbrains/phpstorm-attributes ^1.2
- php ^8.2
- illuminate/support ^11.20
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts 1.0.36
- valtzu/guzzle-websocket-middleware ^0.2.0
- yocto/yoclib-multibase ^1.2
- jetbrains/phpstorm-attributes ^1.2
- php ^8.2
- illuminate/support ^11.20
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts 1.0.36
- valtzu/guzzle-websocket-middleware ^0.2.0
- yocto/yoclib-multibase ^1.2
- jetbrains/phpstorm-attributes ^1.2
- php ^8.2
- ext-pcntl *
- illuminate/support ^11.20
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts 1.0.35
- valtzu/guzzle-websocket-middleware ^0.2.0
- yocto/yoclib-multibase ^1.2
- php ^8.2
- ext-pcntl *
- illuminate/support ^11.20
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts 1.0.33
- valtzu/guzzle-websocket-middleware ^0.2.0
- yocto/yoclib-multibase ^1.2
- php ^8.2
- ext-pcntl *
- illuminate/support ^11.20
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts 1.0.33
- valtzu/guzzle-websocket-middleware ^0.2.0
- yocto/yoclib-multibase ^1.2
- php ^8.2
- ext-pcntl *
- illuminate/support ^11.20
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts 1.0.33
- valtzu/guzzle-websocket-middleware ^0.2.0
- yocto/yoclib-multibase ^1.2
- php ^8.2
- ext-pcntl *
- illuminate/support ^11.20
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts 1.0.33
- valtzu/guzzle-websocket-middleware ^0.2.0
- yocto/yoclib-multibase ^1.2
- php ^8.2
- ext-pcntl *
- illuminate/support ^11.20
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts 1.0.33
- valtzu/guzzle-websocket-middleware ^0.2.0
- php ^8.2
- ext-pcntl *
- illuminate/support ^11.20
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts 1.0.33
- valtzu/guzzle-websocket-middleware ^0.2.0
- php ^8.2
- ext-pcntl *
- illuminate/support ^11.20
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts 1.0.33
- valtzu/guzzle-websocket-middleware ^0.2.0
- php ^8.2
- ext-pcntl *
- illuminate/support ^11.20
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts 1.0.33
- valtzu/guzzle-websocket-middleware ^0.2.0
- php ^8.2
- ext-pcntl *
- illuminate/support ^11.20
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts 1.0.32
- valtzu/guzzle-websocket-middleware ^0.2.0
- php ^8.2
- ext-pcntl *
- illuminate/support ^11.20
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts 1.0.31
- valtzu/guzzle-websocket-middleware ^0.2.0
- php ^8.2
- ext-pcntl *
- illuminate/support ^11.20
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts 1.0.31
- valtzu/guzzle-websocket-middleware ^0.2.0
- php ^8.2
- ext-pcntl *
- illuminate/support ^11.20
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts 1.0.31
- valtzu/guzzle-websocket-middleware ^0.2.0
- php ^8.2
- ext-pcntl *
- illuminate/support ^11.20
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts 1.0.30
- valtzu/guzzle-websocket-middleware ^0.2.0
- php ^8.2
- ext-pcntl *
- illuminate/support ^11.20
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts 1.0.30
- valtzu/guzzle-websocket-middleware ^0.2.0
- php ^8.2
- ext-pcntl *
- illuminate/support ^11.20
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts ^1.0.28
- valtzu/guzzle-websocket-middleware ^0.2.0
- php ^8.2
- ext-pcntl *
- illuminate/support ^11.20
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts ^1.0.28
- valtzu/guzzle-websocket-middleware ^0.2.0
- php ^8.2
- illuminate/support ^11.20
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts ^1.0.25
- php ^8.2
- illuminate/support ^11.20
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts ^1.0.25
- php ^8.2
- illuminate/support ^11.20
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts ^1.0.25
- php ^8.2
- illuminate/support ^11.20
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts ^1.0.25
- php ^8.2
- illuminate/support ^11.20
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts ^1.0.25
- php ^8.2
- illuminate/support ^11.20
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts ^1.0.25
- php ^8.2
- illuminate/support ^11.20
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts ^1.0.25
- php ^8.2
- illuminate/support ^11.20
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts ^1.0.25
- php ^8.2
- illuminate/support ^11.20
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts ^1.0.25
- php ^8.2
- illuminate/support ^11.20
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts ^1.0.21
- php ^8.2
- illuminate/support ^11.20
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts ^1.0.15
- php ^8.2
- illuminate/support ^11.20
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts 1.0.15
- php ^8.2
- illuminate/support ^11.20
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts 1.0.14
- php ^8.2
- illuminate/support ^11.20
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts 1.0.13
- php ^8.2
- illuminate/support ^11.20
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts 1.0.13
- php ^8.2
- illuminate/support ^11.20
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts 1.0.12
- php ^8.2
- illuminate/support ^11.20
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts 1.0.7
- php ^8.2
- illuminate/support ^11.20
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts 1.0.6
- php ^8.2
- illuminate/support ^11.20
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts ^1.0.6
- php ^8.2
- illuminate/support ^11.20
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts ^1.0.5
- php ^8.2
- illuminate/support ^11.20
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts ^1.0.4
- php ^8.2
- illuminate/support ^11.20
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts ^1.0.4
- php ^8.2
- illuminate/support ^11.20
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts ^1.0.4
- php ^8.2
- illuminate/support ^11.20
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts ^1.0.4
- php ^8.2
- illuminate/support ^11.20
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts ^1.0
- php ^8.2
- illuminate/support ^11.20
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- revolution/atproto-lexicon-contracts ^1.0
- php ^8.2
- illuminate/support ^11.20
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- php ^8.2
- illuminate/support ^11.20
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- php ^8.2
- illuminate/support ^11.20
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- php ^8.2
- illuminate/support ^11.20
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- php ^8.2
- illuminate/support ^11.20
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- php ^8.2
- illuminate/support ^11.20
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- php ^8.2
- illuminate/support ^11.20
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- php ^8.2
- illuminate/support ^11.20
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- php ^8.2
- illuminate/support ^11.20
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- php ^8.2
- illuminate/support ^11.20
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- php ^8.2
- illuminate/support ^11.20
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- php ^8.2
- illuminate/support ^11.20
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- php ^8.2
- illuminate/support ^11.20
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- php ^8.2
- illuminate/support ^11.20
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- php ^8.2
- illuminate/support ^11.20
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- php ^8.2
- illuminate/support ^11.20
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- php ^8.2
- illuminate/support ^11.20
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- php ^8.2
- illuminate/support ^11.20
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- php ^8.2
- illuminate/support ^11.20
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- php ^8.2
- illuminate/support ^11.20
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- php ^8.2
- illuminate/support ^11.20
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- php ^8.2
- illuminate/support ^11.20
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- php ^8.2
- illuminate/support ^11.20
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- php ^8.2
- illuminate/support ^11.20
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- php ^8.2
- illuminate/support ^11.20
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- php ^8.2
- illuminate/support ^11.20
- laravel/socialite ^5.16
- guzzlehttp/guzzle ^7.8
- firebase/php-jwt ^6.10
- phpseclib/phpseclib ^3.0
- php ^8.2
- illuminate/support ^11.20
- guzzlehttp/guzzle ^7.8
- php ^8.2
- illuminate/support ^11.20
- guzzlehttp/guzzle ^7.8
- php ^8.2
- illuminate/support ^11.20
- guzzlehttp/guzzle ^7.8
- php ^8.2
- illuminate/support ^11.20
- guzzlehttp/guzzle ^7.8
- php ^8.2
- illuminate/support ^11.20
- guzzlehttp/guzzle ^7.8
- php ^8.2
- illuminate/support ^11.20
- guzzlehttp/guzzle ^7.8
- php ^8.2
- illuminate/support ^11.20
- guzzlehttp/guzzle ^7.8
- php ^8.2
- illuminate/support ^11.20
- guzzlehttp/guzzle ^7.8
- php ^8.2
- illuminate/support ^11.0
- guzzlehttp/guzzle ^7.8
- php ^8.2
- illuminate/support ^11.0
- guzzlehttp/guzzle ^7.8
- php ^8.2
- illuminate/support ^11.0
- guzzlehttp/guzzle ^7.8
- php ^8.2
- illuminate/support ^11.0
- guzzlehttp/guzzle ^7.8
- php ^8.2
- illuminate/support ^11.0
- guzzlehttp/guzzle ^7.8
- php ^8.2
- illuminate/support ^11.0
- guzzlehttp/guzzle ^7.8
- php ^8.2
- illuminate/support ^11.0
- guzzlehttp/guzzle ^7.8
- php ^8.2
- illuminate/support ^11.0
- guzzlehttp/guzzle ^7.8
- php ^8.2
- illuminate/support ^11.0
- guzzlehttp/guzzle ^7.8
- php ^8.2
- illuminate/support ^11.0
- guzzlehttp/guzzle ^7.8
- php ^8.2
- illuminate/support ^11.0
- guzzlehttp/guzzle ^7.8
- php ^8.2
- illuminate/support ^11.0
- guzzlehttp/guzzle ^7.8
- php ^8.2
- illuminate/support ^11.0
- guzzlehttp/guzzle ^7.8
- php ^8.1
- illuminate/support ^10.0||^11.0
- guzzlehttp/guzzle ^7.8
- php ^8.1
- illuminate/support ^10.0||^11.0
- guzzlehttp/guzzle ^7.8
- php ^8.1
- illuminate/support ^10.0||^11.0
- guzzlehttp/guzzle ^7.8
- php ^8.1
- illuminate/support ^10.0||^11.0
- guzzlehttp/guzzle ^7.8
- php ^8.1
- illuminate/support ^10.0||^11.0
- guzzlehttp/guzzle ^7.8
- php ^8.1
- illuminate/support ^10.0||^11.0
- guzzlehttp/guzzle ^7.8
- php ^8.1
- illuminate/support ^10.0||^11.0
- guzzlehttp/guzzle ^7.8
- php ^8.1
- illuminate/support ^10.0||^11.0
- guzzlehttp/guzzle ^7.8
- php ^8.1
- illuminate/support ^10.0||^11.0
- guzzlehttp/guzzle ^7.8
- php ^8.1
- illuminate/support ^10.0||^11.0
- guzzlehttp/guzzle ^7.8
Bluesky(AT Protocol) for Laravel
Requirements
- PHP >= 8.3
- Laravel >= 12.x
Version
| ver | PHP | Laravel |
|---|---|---|
| 1.1.x | ^8.2 | ^11.x |
| 1.2.x | ^8.3 | ^12.x |
- The auto-generated code from lexicon may contain breaking changes.
Installation
composer require revolution/laravel-bluesky
Basically, everything can be set in the .env file, so publishing the config file is optional.
Uninstall
composer remove revolution/laravel-bluesky
Quick start
Search posts (no auth required, no need for your own account)
There are many public APIs that do not require authentication if you just want to retrieve data.
Note Due to temporary API restrictions, searchPosts() currently requires authentication. Please use the authenticated example below instead.
// routes/web.php (CURRENTLY NOT WORKING - unauthenticated usage is temporarily restricted)
use Illuminate\Support\Facades\Route;
use Revolution\Bluesky\Facades\Bluesky;
Route::get('search', function () {
/** @var \Illuminate\Http\Client\Response $response */
$response = Bluesky::searchPosts(q: '#bluesky', limit: 10);
$response->collect('posts')
->each(function (array $post) {
dump(data_get($post, 'author.displayName'));
dump(data_get($post, 'author.handle'));
dump(data_get($post, 'author.did'));
dump(data_get($post, 'record.text'));
});
});
Authenticated usage (currently required due to temporary API restriction)
// routes/web.php
use Illuminate\Support\Facades\Route;
use Revolution\Bluesky\Facades\Bluesky;
Route::get('search-auth', function () {
$response = Bluesky::login(identifier: config('bluesky.identifier'), password: config('bluesky.password'))
->searchPosts(q: '#bluesky', limit: 10);
$response->collect('posts')
->each(function (array $post) {
dump(data_get($post, 'author.displayName'));
dump(data_get($post, 'author.handle'));
dump(data_get($post, 'author.did'));
dump(data_get($post, 'record.text'));
});
});
Get someone's posts (no auth required)
// routes/web.php
use Illuminate\Support\Facades\Route;
use Revolution\Bluesky\Facades\Bluesky;
Route::get('feed', function () {
// "actor" is did(did:plc:***) or handle(***.bsky.social, alice.test)
$response = Bluesky::getAuthorFeed(actor: '***.bsky.social');
$response->collect('feed')
->each(function (array $feed) {
dump(data_get($feed, 'post.author.displayName'));
dump(data_get($feed, 'post.record.text'));
});
});
You can get your own posts by specifying your did or handle as the actor. No authentication is required to get and save your own posts.
Create a post (requires auth)
There are two authentication methods for Bluesky: "App password" and "OAuth". Here we will use "App password". Obtain the App password from Bluesky and set it in .env.
// .env
BLUESKY_IDENTIFIER=***.bsky.social
BLUESKY_APP_PASSWORD=****-****-****-****
// routes/web.php
use Illuminate\Support\Facades\Route;
use Revolution\Bluesky\Facades\Bluesky;
Route::get('post', function () {
$response = Bluesky::login(identifier: config('bluesky.identifier'), password: config('bluesky.password'))
->post('Hello Bluesky');
});
This is easy if you're just sending simple text, but in the real world you'll need to use TextBuilder to make links and tags work.
// routes/web.php
use Illuminate\Support\Facades\Route;
use Revolution\Bluesky\Facades\Bluesky;
use Revolution\Bluesky\Record\Post;
use Revolution\Bluesky\RichText\TextBuilder;
Route::get('text-builder', function () {
$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);
});
Following message will be posted:
Hello Bluesky
https://bsky.app/
#Bluesky
To authenticate with OAuth, read the Socialite documentation.
Documentation
Sample project
Contracts
https://github.com/invokable/atproto-lexicon-contracts
LICENCE
MIT