getherbie / herbie
Herbie 是一个简单、现代、快速且高度可定制的平面文件内容管理系统(CMS),由 PHP、Twig、Markdown、Textile、reStructuredText 和其他可读文本文件提供支持。
Requires
- php: >=8.0
- composer-runtime-api: ^2.0
- ext-json: *
- ausi/slug-generator: ^1.1
- imagine/imagine: ^1.3
- psr/container: ^1.1
- psr/event-dispatcher: ^1.0
- psr/http-message: ^1.0
- psr/http-server-middleware: ^1.0
- psr/log: ^1.1
- psr/simple-cache: ^1.0
- symfony/console: ^5.0
- symfony/yaml: ^5.4
- tebe/http-factory: ^2.0
- twig/twig: ^3.4
Requires (Dev)
- codeception/c3: ^2.7
- codeception/codeception: ^4.2
- codeception/module-asserts: ^1.0.0
- codeception/module-phpbrowser: ^1.0.0
- doctrine/rst-parser: ^0.5.2
- erusev/parsedown: ^1.7
- erusev/parsedown-extra: ^0.8.1
- friendsofphp/php-cs-fixer: ^3.11
- getherbie/plugin-simplecontact: dev-master
- getherbie/plugin-simplesearch: dev-master
- laminas/laminas-diactoros: ^2.17
- netcarver/textile: ^3.7
- phpstan/phpstan: ^1.8
- squizlabs/php_codesniffer: ^3.7
- symfony/process: ^5.4
- 2.x-dev
- v2.0.0
- v2.0.0-RC1
- 1.x-dev
- v1.1.0
- v1.0.1
- v1.0.0
- v0.8.6
- v0.8.5
- v0.8.4
- v0.8.3
- v0.8.2
- v0.8.1
- v0.8.0
- v0.7.0
- v0.6.1
- v0.6.0
- v0.5.1
- v0.5.0
- dev-2.x-develop-matrix-ci
- dev-2.x-develop
- dev-2.x-develop-adminpanel
- dev-2.x-develop-sorted-data
- dev-2.x-develop-snake-case
- dev-2.x-develop-camelize
- dev-2.x-develop-menu-items
- dev-2.x-develop-url-matcher-etc
- dev-2.x-develop-construct-options
- dev-2.x-develop-extendpaths
- dev-2.x-develop-prism
- dev-2.x-develop-request
- dev-1.2-back-on-track
- dev-master
- dev-1.x-develop
- dev-1.x-adminpanel
This package is auto-updated.
Last update: 2024-10-01 00:15:48 UTC
README
Herbie
快速创建小巧但功能齐全的网站或博客 👌
Herbie 是一个简单、现代、快速且高度可定制的平面文件内容管理系统(CMS),由 PHP、Twig、Markdown、Textile、reStructuredText 和其他可读文本文件提供支持。
特性
Herbie 驱动于经过验证的库
- Markdown、reStructuredText 和 Textile 用于格式化页面内容
- Twig 模板引擎用于渲染布局和扩展核心
- Yaml 和 JSON 用于数据结构文件
- Composer 和 Packagist 用于依赖和插件管理
得益于其插件系统,Herbie 非常可定制,并支持以下功能:
- 应用程序和路由中间件
- 事件监听器
- Twig 过滤器、Twig 全局变量、Twig 函数和 Twig 测试
- Symfony 控制台命令
Herbie 实现了以下 PHP 标准建议
- PSR-1 基本编码标准
- PSR-3 日志接口
- PSR-4 自动加载标准
- PSR-7 HTTP 消息接口
- PSR-11 容器接口
- PSR-12 扩展编码风格
- PSR-14 事件调度器
- PSR-15 HTTP 处理器
- PSR-16 简单缓存
- PSR-17 HTTP 工厂
Herbie 经过良好的测试
- 使用 Codeception 进行单元、集成和验收测试
- 使用 PHPStan 进行静态代码分析
- 使用 PHP Coding Standards Fixer 进行代码修复
用例
TBD
安装
Composer
通过 Composer 安装 Herbie 是最简单的方法。在您的终端中运行以下命令以创建新项目并安装所有依赖库。
composer create-project getherbie/start-website mywebsite
切换到 mywebsite/web
目录
cd mywebsite/web
启动内部 web 服务器
php -S localhost:8888 index.php
现在,用您的浏览器打开 https://:8888。您应该看到您的第一个 Herbie 网站。
开发环境
如果您需要一个开发环境,可以按照以下步骤操作。
克隆 GitHub 仓库。
git clone https://github.com/getherbie/herbie.git
切换到herbie
目录。
cd herbie
安装Composer依赖。
composer install
切换到website/web
目录。
cd website/web/
启动PHP的内部web服务器。
php -S localhost:9999 index.php
现在,使用您喜欢的网页浏览器打开localhost:9999
。
如果您需要额外的控制台输出或日志信息,设置debug环境变量。
HERBIE_DEBUG=1 php -S localhost:9999 index.php
如果您想使用Xdebug (3.x),请按以下方式启动内部web服务器。提示:要使此功能正常工作,Xdebug必须已安装。
XDEBUG_MODE=debug php -S localhost:9999 index.php
测试
运行单元测试
php vendor/bin/codecept run unit
运行集成测试
php vendor/bin/codecept run integration
运行验收测试
php vendor/bin/codecept run acceptance
运行所有测试
php vendor/bin/codecept run
运行带有代码覆盖率测试
XDEBUG_MODE=coverage vendor/bin/codecept run --coverage --coverage-xml --coverage-html
更多信息
更多信息,请参阅https://herbie.tebe.ch。