{ "name": "pixelfed/pixelfed", "description": "Open and ethical photo sharing platform, powered by ActivityPub federation.", "keywords": ["framework", "laravel", "pixelfed", "activitypub", "social", "network", "federation"], "license": "AGPL-3.0-only", "type": "project", "require": { "php": "^8.3|^8.4|^8.5", "ext-bcmath": "*", "ext-ctype": "*", "ext-curl": "*", "ext-intl": "*", "ext-json": "*", "ext-mbstring": "*", "ext-openssl": "*", "ext-redis": "*", "bacon/bacon-qr-code": "^3.0", "brick/math": "^0.14", "buzz/laravel-h-captcha": "^1.0.4", "guzzlehttp/guzzle": "^7.10", "intervention/image-driver-vips": "^4.1", "intervention/image-laravel": "^4.1", "laravel-notification-channels/expo": "^2.0.0", "laravel-notification-channels/webpush": "^10.2", "laravel/framework": "^12.0", "laravel/horizon": "^5.0", "laravel/passport": "^13.4.4", "laravel/pulse": "^1.3", "laravel/sanctum": "^4.3", "laravel/tinker": "^3.0", "laravel/ui": "^4.2", "league/flysystem-aws-s3-v3": "^3.0", "league/iso3166": "^2.1|^4.0", "league/oauth2-client": "^2.8", "league/uri": "^7.4", "matomo/device-detector": "^6.5", "pbmedia/laravel-ffmpeg": "^8.0", "phpseclib/phpseclib": "~3.0", "pixelfed/fractal": "^0.18.0", "pixelfed/laravel-snowflake": "^2.0", "pragmarx/google2fa": "^9.0", "predis/predis": "^3.2", "pusher/pusher-php-server": "^7.2", "resend/resend-php": "^0.13.0", "spatie/laravel-backup": "^9.2.9", "spatie/laravel-honeypot": "^4.7", "spatie/laravel-image-optimizer": "^1.8.2", "stevebauman/purify": "^6.2.0", "symfony/http-client": "^7.3", "symfony/http-foundation": "^7.4.13", "symfony/mailgun-mailer": "^7.3" }, "require-dev": { "fakerphp/faker": "^1.23", "larastan/larastan": "^3.0", "laravel/pint": "^1.13", "laravel/telescope": "^5.5", "mockery/mockery": "^1.6", "nunomaduro/collision": "^8.8", "pestphp/pest": "^4.0", "psalm/plugin-laravel": "^3", "vimeo/psalm": "^6.5" }, "autoload": { "psr-4": { "App\\": "app/", "Database\\Factories\\": "database/factories/", "Database\\Seeders\\": "database/seeders/" }, "files": [ "app/helpers.php" ] }, "autoload-dev": { "psr-4": { "Tests\\": "tests/" }, "files": [ "app/helpers.php" ] }, "extra": { "laravel": { "dont-discover": [ "laravel/passport" ] } }, "scripts": { "post-root-package-install": [ "@php -r \"file_exists('.env') || copy('.env.example', '.env');\"" ], "post-create-project-cmd": [ "@php artisan key:generate --ansi" ], "post-update-cmd": [ "@php artisan vendor:publish --tag=laravel-assets --ansi --force" ], "post-autoload-dump": [ "Illuminate\\Foundation\\ComposerScripts::postAutoloadDump", "@php artisan package:discover --ansi" ], "analyse": "./vendor/bin/phpstan analyse --memory-limit=512M", "psalm": "./vendor/bin/psalm", "psalm:baseline": "./vendor/bin/psalm --update-baseline", "psalm:report": "./vendor/bin/psalm --ignore-baseline --no-cache --show-info=true --report=psalm-report.txt --report-show-info=true", "test": [ "docker compose -f docker-compose.test.yml up -d --wait", "./vendor/bin/pest --compact", "docker compose -f docker-compose.test.yml down" ], "test:filter": "./vendor/bin/pest --compact --filter", "test:quick": "./vendor/bin/pest --compact", "lint": "./vendor/bin/pint", "lint:test": "./vendor/bin/pint --test" }, "config": { "preferred-install": "dist", "sort-packages": true, "optimize-autoloader": true, "allow-plugins": { "pestphp/pest-plugin": true, "php-http/discovery": true }, "platform": { "php": "8.3.0" } }, "prefer-stable": true }