/phpup

The PHP toolchain: run Composer, PHPStan, Rector, or any PHP script without having PHP installed.

Primary LanguageShellApache License 2.0Apache-2.0

phpup
The PHP Toolchain

Phpup is a single-file binary with zero dependencies that includes Composer and other PHP tools. It also allows installing a per-project PHP based on your composer.json.

You don't need to have PHP or anything at all on your system to run it.

Warning

Under heavy development
Currently, this is an MVP, and only macOS aarch64 is supported.

Installation

Download phpup binary from the release page and put it into a directory on your PATH, so you can simply call phpup from any directory.

curl -OL https://github.com/pronskiy/phpup/releases/latest/download/phpup
chmod +x phpup
sudo mv phpup /usr/local/bin/phpup

Usage

  • phpup list – See the list of available commands.

  • phpup <file> – Run any php file. 🚧

  • phpup composer – Composer that does not require PHP to be installed.

  • phpup conductor <command> – Like npx but for PHP. 🚧

  • phpup locus – Installs PHP binary under your project's vendor/bin/php based on the requirements in composer.json.

  • phpup phpstan – PHPStan that does not require PHP. 🚧

  • phpup rector – Rector that does not require PHP. 🚧

Contributing

Contributions are very welcome! However, it's recommended to first create an issue describing the idea — let's find the best approach together.

See some ideas in the todo list below.

Build Requirements

Before you begin, ensure you have met the following requirements:

  • Make (version 3.0 or later)
  • Box (version 4.x)

Building Binary

make build

TODO

Credits

This package entirely relies on https://github.com/static-php and https://github.com/easysoft/phpmicro.