numeri/suphle

该包最新版本(v1.1.2)没有可用的许可证信息。

面向性能、可扩展和可测试的Web应用的PHP框架

维护者

详细信息

github.com/nmeri17/suphle

源代码

问题

安装: 35

依赖项: 1

建议者: 0

安全: 0

星标: 33

关注者: 3

分支: 0

开放问题: 9

类型:框架

v1.1.2 2024-05-30 05:09 UTC

This package is auto-updated.

Last update: 2024-09-30 10:50:39 UTC


README

Suphle Banner

Suphle 框架

介绍

这是一个面向开发者的项目,旨在为 Suphle 自身做出贡献。其完整文档可在 netlify 上查看。

关于 Suphle 的功能和为什么它被构建的高级细节已迁移至 此处此处

测试

通常,从您的系统web文件夹中

composer create-project nmeri/suphle AwesomeProject

cd AwesomeProject

composer test -- "/path/to/AwesomeProject/tests"

测试与数据库交互,因此期望找到类似于运行WAMP等效项获得的活跃MySQL连接。服务器可以配置为使用其他任何东西,但为了本演示的目的,我们只使用MySQL。

每个模块都包含一个 .env,其中包含以下条目

DATABASE_NAME = suphle
DATABASE_USER = root
DATABASE_PASS = 
DATABASE_HOST = localhost

数据库名称并不重要。所有命令需要的只是凭证与您的本地MySQL服务器匹配,以便运行迁移。

当直接执行时,测试将留下种子数据。为了让数据库在执行完毕后自我销毁,我们必须提供配置架构。

composer test -- "/path/to/AwesomeProject/tests" -c=/path/to/AwesomeProject/phpunit.xml

并行测试

前面显示的命令将同步执行测试,这可能不是针对您的机器最优化。那些使用具有多个核心的系统的人可以利用并发测试,并可选择并行执行测试。

composer parallel-test -- "/path/to/AwesomeProject/tests" --processes=5

在上面的例子中,我们强制使用5个进程;然而,当留空时,运行器将根据可用的核心数量确定使用进程的最优数量。因此,这同样有效

composer parallel-test -- "/path/to/AwesomeProject/tests"

与在开发中使用此运行器一样,请注意,它会吞咽所有PHPUnit输出。因此,如果在测试调用完成之前失败,您可能需要同步运行以了解出了什么问题。

浏览器访问

应通过测试和通过扩展命令行与框架进行所有交互。那些不习惯阅读源代码/测试或运行测试,或者那些没有耐心,更愿意在浏览器上看到某些内容的人,应该启动 Roadrunner 服务器

php suphle_cli server:start Modules --insane  --ignore_static_correct

然后,访问以下任一路由

它们不需要任何数据库连接,只演示了将传入请求路由到附加的动作处理器的相对基本能力,同时考虑了更高级的约束,如模块和前缀。

如果您只是浏览,一个 sort of 示例应用程序位于 tests/Mocks 文件夹中。重点放在 "sort of" 上,因为那里的 ModuleOne 用于测试框架的绝大多数功能,并不一定反映您从真实生活Suphle模块中期望的内容。

为 Starter 项目做出贡献

Starter项目 是面向用户的项目,旨在为启动新的Suphle项目提供基础。如果您需要对其做出贡献,同时安装它们会非常方便,这样在开发过程中,您对核心项目的更新将反映在您的Starter安装上。

此项目必须首先安装。

composer create-project nmeri/suphle

git clone https://github.com/nmeri17/suphle-starter.git

之后,Starter项目应从您的本地安装中提取父项目。导航到Starter项目的composer.json文件,并添加以下条目

"repositories": [
	{
		"type": "path",
        "url": "../suphle"
    }
],
"minimum-stability": "dev"

现在,使用安装命令指导Composer将本地安装视为父项目

cd suphle-starter

composer install

现在一切准备就绪!检出新的分支以实现您的惊人特性。如果您还需要与Roadrunner服务器交互,可以像这样获取其二进制文件

cd vendor/bin

rr get-binary

如何开始贡献

建议您在带有help-wanted标签的现有问题中提供帮助,这有助于我们实现最初的目标。[链接](https://github.com/nmeri17/suphle/issues?q=is%3Aissue+is%3Aopen+label%3A%22help+wanted%22)。由于我非常珍视您的时间,建议在新问题中讨论新添加的内容,并获得实施授权。请参阅贡献指南以获取更多详细信息。

安全

安全策略