fiberphp/installer

📥 FiberPHP 项目安装器 —— 脚手架与项目初始化,一键创建应用骨架。

Maintainers

Package info

gitee.com/FiberPHP/installer

Issues

pkg:composer/fiberphp/installer

Transparency log

Statistics

Installs: 0

Dependents: 0

Suggesters: 0

dev-master 2026-08-30 15:49 UTC

This package is auto-updated.

Last update: 2026-08-30 15:50:01 UTC


README

FiberPHP 项目安装器。提供 fiberphp new 脚手架命令,从内置模板一键生成应用骨架(含 composer.json / start.php / config / .env.example),开箱即跑。

环境要求

  • PHP >= 8.3
  • ext-json
  • fiberphp/framework *
  • fiberphp/console *

安装

composer require fiberphp/installer

包提供 bin/fiberphp 可执行入口,安装后即可在终端调用 fiberphp 命令。

创建新应用

# 在当前目录下创建 my-app 项目
fiberphp new my-app

# 指定基础路径与应用名(composer.json name)
fiberphp new my-app --path=/var/www --app-name=org/myapp

命令执行流程:

  1. 解析目标目录(<basePath>/<name>,绝对路径开头时直接采用)
  2. 校验目录为空(非空则终止,避免误覆盖)
  3. 递归拷贝 skeleton/ 模板到目标目录
  4. 替换模板占位符({{APP_NAME}} / {{PROJECT_NAME}},仅 .php / .json 文件)
  5. 输出后续步骤提示

生成后的项目骨架:

my-app/
├── app/Controller/IndexController.php   # 示例控制器
├── config/
│   ├── app.php                         # 应用配置
│   ├── commands.php                    # 命令注册
│   └── log.php                         # 日志配置
├── .env.example                        # 环境变量模板
├── composer.json                        # 依赖声明(已替换 APP_NAME)
├── start.php                            # HTTP 启动入口
└── fiber                                # CLI 启动入口

生成后下一步:

cd my-app
composer install
php start.php

模板自定义

骨架模板位于包内 skeleton/ 目录,直接编辑其中文件即可调整生成内容:

  • 新增文件:放入 skeleton/ 对应位置,生成时一并拷贝
  • 占位符:在 .php / .json 文件中写 {{APP_NAME}} / {{PROJECT_NAME}},生成时自动替换
  • 默认依赖:编辑 skeleton/composer.jsonrequire

目录结构

installer/
├── bin/
│   └── fiberphp                 # CLI 入口(启动 Console Application)
├── skeleton/                     # 应用骨架模板
│   ├── app/Controller/
│   ├── config/
│   ├── .env.example
│   ├── composer.json
│   ├── start.php
│   └── fiber
├── src/
│   ├── Install.php               # 包安装器(注册 NewCommand)
│   ├── Command/
│   │   └── NewCommand.php       # `fiberphp new` 命令实现
│   └── Skeleton.php             # 骨架生成器(拷贝 + 占位符替换)
└── README.md

License

MIT License (c) 2026 庞斌,详见 LICENSE