solenoid/core

HTTP MVC 框架

v1.0.0-beta 2023-12-17 22:25 UTC

This package is auto-updated.

Last update: 2024-09-18 00:13:44 UTC


README

核心 是一个智能的 HTTP/CLI MVC 框架,用于构建易于或非常复杂的端点,并集成了大量后端库。

当前项目包含一个示例 Web 应用,以帮助开发者更容易地学习该框架的内部逻辑。

对于官方和完整的文档,您应导航至 知识库

Solenoid Core Logo



设置

要创建一个新的 Core 项目,您只需从终端运行以下命令即可

git clone https://github.com/Solenoid-IT/php-core ./core
cd ./core/private
php x init

要求

OS >= Ubuntu 22.04.1 LTS
WebServer >= Apache 2.4
Runtime-Environment >= PHP 7.3

上下文

Core 可以使用相同的代码库同时运行 HTTPCLI 上下文

HTTP = 路径解析器 -> 网关 -> 中间件组 -> 控制器 -> 响应
CLI = 任务运行器 -> 响应

存储模型服务 对象在 HTTP 和 CLI 之间共享,因此它们只定义一次,可在两个上下文中使用。

日志

Core 将捕获并记录所有抛出的错误以及每次执行调用

环境

Core 使您能够在不同的专业环境类型下运行("dev" 和 "prod" 是保留的,但您可以定义自定义的)

dev = 此类型将显示系统中的每个错误,并在您使用 Core::asset 函数定义资产 URL 时使用未缓存的 Web 资产(CSS、JS 或其他静态资源)

prod = 此类型将隐藏系统中的每个错误(安全问题)并使用缓存的 Web 资产以提高前端性能和 UX

custom = 此类型可以自定义定义

(错误日志将独立于当前环境设置进行跟踪)

实用工具

Core 集成了一个顶级 CLI 实用工具 "x",可以执行一些有用的操作,例如初始化项目、安装包、管理 Git 仓库、创建对象(存储库、模型、服务、中间件或控制器)、管理 Apache、证书和 cron。

路由

Core 有一个映射文件来定义如何通过其 URL 路径解析请求。

路由 -> 转向目标对象(您可以向其附加多个中间件组或标签)
路径 -> 可以是静态的或动态的(包含占位符变量)
动词 -> 路径的 HTTP 动词(例如 GET、RPC、SSE 或 DELETE)
目标 -> 将运行堆栈的对象(网关 -> 中间件组 -> 控制器)

集成

Core 内置了对 SvelteKit 作为前端 JS 框架的支持。
您可以通过执行以下命令来安装它: php x svelte install

UI

此项目使用 sb-admin 作为 UI 模板

性能

引导过程中使用的内存(最小消耗)

HTTP -> 216 B
CLI -> 96 B

许可

Solenoid 核心 框架受 MIT 许可证约束,因此它是开源友好的