getpop/site

创建一个基于组件的网站

1.0.6 2023-09-07 09:19 UTC

README

创建一个基于组件的网站

安装

通过 Composer

composer require getpop/site

开发

源代码托管在 GatoGraphQL monorepo,位于 SiteBuilder/packages/site 下。

使用

初始化组件

\PoP\Root\App::stockAndInitializeModuleClasses([([
    \PoP\Site\Module::class,
]);

架构基础

布局通过自定义构建的响应性渲染,基于观察一个独特的 JavaScript 对象(其中包含数据库和配置数据)。

视图通过 Handlebars 模板实现,这些模板可以在客户端(通过 Handlebars 运行时)和服务器(通过 PHP 库 LightnCandy)中加载。这种方法是同构的:相同的代码可以在两个环境中运行。

实现即将推出。

主要概念

通过 JavaScript 模板进行渲染

将很快添加...

同构服务器端渲染

将很快添加...

响应性

将很快添加...

架构设计和实现

数据加载

数据加载模块

Handlebars

将很快添加...

LightnCandy

将很快添加...

代码拆分

将很快添加...

渐进式 Web 应用

将很快添加...

单页应用

将很快添加...

内容 CDN

将很快添加...

A/B 测试

将很快添加...

表单输入模块

将很快添加...

客户端渲染

将很快添加...

通过 Handlebars 的 JavaScript 模板

将很快添加...

执行 JavaScript 函数

将很快添加...

资源

将很快添加...

资产捆绑

将很快添加...

渐进式启动

将很快添加...

body 中的链接

将很快添加...

状态管理

将很快添加...

数据缓存、配置缓存和复制

将很快添加...

响应性

将很快添加...

服务器端渲染

将很快添加...

同构

将很快添加...

通过 LightnCandy 将 JavaScript 模板转换为 PHP

将很快添加...

将网页渲染为事务性电子邮件

将很快添加...

PHP 版本

要求

  • 开发需要 PHP 8.1+
  • 生产需要 PHP 7.2+

支持的 PHP 功能

请查看 GatoGraphQL/GatoGraphQL 中的支持功能列表

预览降级到 PHP 7.2

通过 Rector(dry-run 模式)

composer preview-code-downgrade

标准

PSR-1PSR-4PSR-12

要检查编码标准,请运行 PHP CodeSniffer

composer check-style

要自动修复问题,请运行

composer fix-style

变更日志

有关最近更改的更多信息,请参阅 CHANGELOG

测试

要执行 PHPUnit,请运行

composer test

静态分析

要执行 PHPStan,请运行

composer analyse

报告问题

要报告错误或请求新功能,请在 GatoGraphQL monorepo issue tracker 上操作。

贡献

我们欢迎对这个包的贡献,可在 GatoGraphQL monorepo(该包的源代码存储的地方)进行。

有关详细信息,请参阅 CONTRIBUTINGCODE_OF_CONDUCT

安全

如果您发现任何与安全相关的问题,请发送电子邮件至 leo@getpop.org,而不是使用问题跟踪器。

致谢

许可协议

GNU通用公共许可证第2版(或更新版)。有关更多信息,请参阅许可文件