mirror of
https://github.com/crazywhalecc/static-php-cli.git
synced 2026-07-04 07:15:38 +08:00
50 lines
1.6 KiB
Markdown
50 lines
1.6 KiB
Markdown
# Developer Guide
|
|
|
|
This section covers the StaticPHP development workflow and the foundational knowledge needed to understand how StaticPHP works under the hood.
|
|
|
|
## Overview
|
|
|
|
StaticPHP is a binary build tool whose core purpose is managing the build pipeline — downloading and configuring PHP source code, resolving extension dependencies, and invoking the underlying build system (e.g., Docker or a local compiler).
|
|
|
|
From a development perspective, StaticPHP is an open framework that provides the ability to statically build PHP and other open-source tools together. The project is maintained by [@crazywhalecc](https://github.com/crazywhalecc) and [@henderkes](https://github.com/henderkes), with contributions from the community.
|
|
|
|
You can think of StaticPHP as a typical PHP CLI project built on [symfony/console](https://symfony.com/doc/current/components/console.html).
|
|
|
|
## Development Environment
|
|
|
|
To get started with StaticPHP development, you'll need a PHP development environment with the required dependencies installed.
|
|
|
|
Requirements:
|
|
|
|
- PHP 8.4 or later
|
|
- Composer
|
|
- Git
|
|
- PHP extensions: `curl, dom, filter, mbstring, openssl, pcntl, phar, posix, sodium, tokenizer, xml, xmlwriter`
|
|
|
|
> These PHP extensions are required for StaticPHP's `dev` environment.
|
|
|
|
### Setup Steps
|
|
|
|
1. Clone the repository:
|
|
|
|
```bash
|
|
git clone https://github.com/crazywhalecc/static-php-cli.git
|
|
cd static-php-cli
|
|
```
|
|
|
|
2. Install PHP dependencies:
|
|
|
|
```bash
|
|
composer install
|
|
```
|
|
|
|
3. Verify the setup:
|
|
|
|
```bash
|
|
bin/spc --version
|
|
```
|
|
|
|
---
|
|
|
|
You can continue reading [Project Structure](./structure) to learn more about StaticPHP's framework architecture.
|