{
	"name": "codeigniter4/codeigniter4",
	"type": "project",
	"description": "The CodeIgniter framework v4",
	"homepage": "https://codeigniter.com",
	"license": "MIT",
	"require": {
		"php": "^7.4 || ^8.0",
		"ext-intl": "*",
		"ext-json": "*",
		"ext-mbstring": "*",
		"firebase/php-jwt": "^6.0",
		"laminas/laminas-escaper": "^2.9",
		"mike42/escpos-php": "^3.0",
		"milon/barcode": "^10.0",
		"mpdf/mpdf": "^8.0",
		"phpoffice/phpspreadsheet": "^1.22",
		"psr/log": "^1.1",
		"pyyoshi/shortuuid-php": "^1.0",
		"spipu/html2pdf": "^5.2",
		"tecnickcom/tcpdf": "^6.4",
		"y0lk/sqldumper": "^0.2.1"
	},
	"require-dev": {
        "kint-php/kint": "^5.0.4",
        "codeigniter/coding-standard": "^1.5",
		"codeigniter/phpstan-codeigniter": "^v1.4",
        "ergebnis/composer-normalize": "^2.28",
        "fakerphp/faker": "^1.9",
        "friendsofphp/php-cs-fixer": "3.13.0",
        "mikey179/vfsstream": "^1.6",
        "nexusphp/cs-config": "^3.6",
        "nexusphp/tachycardia": "^1.0",
        "php-coveralls/php-coveralls": "^2.5",
		"phpstan/extension-installer": "^1.3",
        "phpstan/phpstan": "^1.10.2",
		"phpstan/phpstan-strict-rules": "^1.5",
        "phpunit/phpcov": "^8.2",
        "phpunit/phpunit": "^9.1",
        "predis/predis": "^1.1 || ^2.0",
        "rector/rector": "0.18.6",
        "vimeo/psalm": "^5.0"
    },
    "suggest": {
        "ext-curl": "If you use CURLRequest class",
        "ext-imagick": "If you use Image class ImageMagickHandler",
        "ext-gd": "If you use Image class GDHandler",
        "ext-exif": "If you run Image class tests",
        "ext-simplexml": "If you format XML",
        "ext-mysqli": "If you use MySQL",
        "ext-oci8": "If you use Oracle Database",
        "ext-pgsql": "If you use PostgreSQL",
        "ext-sqlsrv": "If you use SQL Server",
        "ext-sqlite3": "If you use SQLite3",
        "ext-memcache": "If you use Cache class MemcachedHandler with Memcache",
        "ext-memcached": "If you use Cache class MemcachedHandler with Memcached",
        "ext-redis": "If you use Cache class RedisHandler",
        "ext-dom": "If you use TestResponse",
        "ext-libxml": "If you use TestResponse",
        "ext-xdebug": "If you use CIUnitTestCase::assertHeaderEmitted()",
        "ext-fileinfo": "Improves mime type detection for files",
        "ext-readline": "Improves CLI::input() usability"
    },
    "config": {
        "optimize-autoloader": true,
        "preferred-install": "dist",
        "sort-packages": true,
		"allow-plugins": {
			"ergebnis/composer-normalize": true,
			"phpstan/extension-installer": true
		}
    },
    "extra": {
        "branch-alias": {
            "dev-develop": "4.x-dev"
        }
    },
    "autoload": {
        "psr-4": {
            "CodeIgniter\\": "system/"
        },
        "exclude-from-classmap": [
            "**/Database/Migrations/**"
        ]
    },
    "autoload-dev": {
        "psr-4": {
            "CodeIgniter\\": "tests/system/",
            "Utils\\": "utils/"
        }
    },
    "scripts": {
        "post-update-cmd": [
            "CodeIgniter\\ComposerScripts::postUpdate",
            "bash -c \"if [ -f admin/setup.sh ]; then bash admin/setup.sh; fi\""
        ],
        "analyze": [
            "bash -c \"XDEBUG_MODE=off phpstan analyse\"",
            "rector process --dry-run"
        ],
        "sa": "@analyze",
        "test": "phpunit",
        "cs": [
            "php-cs-fixer fix --ansi --verbose --dry-run --diff --config=.php-cs-fixer.user-guide.php",
            "php-cs-fixer fix --ansi --verbose --dry-run --diff --config=.php-cs-fixer.no-header.php",
            "php-cs-fixer fix --ansi --verbose --dry-run --diff"
        ],
        "cs-fix": [
            "php-cs-fixer fix --ansi --verbose --diff --config=.php-cs-fixer.user-guide.php",
            "php-cs-fixer fix --ansi --verbose --diff --config=.php-cs-fixer.no-header.php",
            "php-cs-fixer fix --ansi --verbose --diff"
        ],
        "style": "@cs-fix"
    },
    "scripts-descriptions": {
        "analyze": "Run static analysis",
        "test": "Run unit tests",
        "cs": "Check the coding style",
        "cs-fix": "Fix the coding style"
    },
    "support": {
        "forum": "https://forum.codeigniter.com/",
        "source": "https://github.com/codeigniter4/CodeIgniter4",
        "slack": "https://codeigniterchat.slack.com"
    }
}
