What's on this page
Installation
Cecil is distributed as a single executable file, cecil.phar, which runs anywhere PHP is installed, and as standalone binaries that don't require PHP.
Requirements
- PHP 8.3+
- PHP extensions:
fileinfo,gdandmbstring
Check your PHP version and loaded extensions:
php -v
php -m
Optional extensions
| Extension | Usage |
|---|---|
intl |
Date localization for locales other than en (otherwise optional, improves performance). |
curl |
Checking external links with the doctor:links command. |
imagick |
Image processing, preferred over GD when available. |
ffi |
Image processing with libvips (requires Composer installation). |
Download the PHAR
Download cecil.phar from your terminal:
curl -LO https://cecil.app/cecil.phar
Then run it with PHP:
php cecil.phar --version
Standalone binary
If PHP is not installed, download the standalone binary for your platform from the latest GitHub release. It embeds PHP and the required extensions.
| Platform | File |
|---|---|
| Linux x64 | cecil-linux-x64 |
| Linux ARM64 | cecil-linux-arm64 |
| macOS Intel | cecil-macos-x64 |
| macOS Apple Silicon | cecil-macos-arm64 |
| Windows x64 | cecil-windows-x64.exe |
For example:
Linux
curl -Lo cecil https://github.com/Cecilapp/Cecil/releases/latest/download/cecil-linux-x64
chmod +x cecil
./cecil --version
macOS
curl -Lo cecil https://github.com/Cecilapp/Cecil/releases/latest/download/cecil-macos-arm64
chmod +x cecil
xattr -d com.apple.quarantine cecil
./cecil --version
Binaries are not signed: the xattr command removes the quarantine attribute before the first run.
Windows
curl.exe -Lo cecil.exe https://github.com/Cecilapp/Cecil/releases/latest/download/cecil-windows-x64.exe
.\cecil.exe --version
Install globally
Installing Cecil globally allows you to run the cecil command from any directory, instead of php cecil.phar.
Linux
By moving the PHAR into a directory of your PATH:
sudo mv cecil.phar /usr/local/bin/cecil
sudo chmod +x /usr/local/bin/cecil
macOS
With Homebrew:
brew install cecilapp/tap/cecil
Windows
With Scoop:
scoop install https://cecil.app/scoop/cecil.json
Or manually:
- Move
cecil.pharto a dedicated directory, such asC:\bin - Rename it from
cecil.phartocecil - Append
;C:\binto yourPATHenvironment variable - Create a wrapping batch script next to it
PHIVE
With PHIVE (The PHAR Installation and Verification Environment):
phive install cecil
Composer
With Composer:
composer global require cecil/cecil
Verify the installation
cecil --version
Or, if Cecil is not installed globally:
php cecil.phar --version
Update
Update Cecil to the latest version according to your installation method:
PHAR
php cecil.phar self-update
Homebrew
brew upgrade cecilapp/tap/cecil
Scoop
scoop update cecil
PHIVE
phive update cecil
Composer
composer global update cecil/cecil
The standalone binary is updated by downloading it again.
The self-update command (alias selfupdate, PHAR only) also accepts the following options:
--rollback: reverts to the previously installed version--stable: forces an update to the latest stable version--preview: forces an update to the latest unstable version
Troubleshooting
command not found: cecil
The installation directory is not in your PATH: add it, or run Cecil with php cecil.phar from the directory containing the PHAR.
PHP version or extension error
Your PHP CLI may differ from the one you expect (several versions installed): check it with php -v and php --ini, then enable missing extensions in the loaded php.ini file.
Diagnose a website
Once a website is created, run the doctor command to diagnose its configuration.