Initial baseline: LaraBlog core with plugin commerce surface.

Captures the current working tree after theme slots, ArticleAccess, and the payment / paid-content plugins so subsequent work has a reviewable git history.
This commit is contained in:
ak
2026-08-12 01:15:38 +08:00
commit 263b98b218
337 changed files with 31393 additions and 0 deletions
+43
View File
@@ -0,0 +1,43 @@
# LaraBlog 架构与开发思想
## 目标
把 sablog 内容与 SEO 权重迁到现代 Laravel 栈:**不克隆过时能力**Trackback/WAP/旧 Admin),用主题/插件/对象存储/AI 队列替换。
## 分层
```
HTTP (legacy .shtml + /admin Filament + /api/v1)
→ Controllers / Filament Pages
→ Domain (Blog / Media / Theme / Plugin / Seo / Ai)
→ Eloquent Models + Spatie Settings
→ S3 disk / Redis queues / Workerman
```
## 关键约定
| 区域 | 路径 |
|---|---|
| Legacy 前台 URL | `routes/legacy.php` |
| Web 辅助 | `routes/web.php` |
| JSON API(小程序/其他端) | `routes/api.php``/api/v1/*` |
| 领域逻辑 | `app/Domain/*` |
| 主题 | `themes/{slug}/` |
| 插件 | `plugins/{vendor}/{name}/` |
| 规格 | `docs/specs/larablog-platform/` |
| OpenAPI | `docs/api/openapi.yaml` |
## 开发模式
1. **规格先行**:非琐碎功能写 SPEC / CHECKLIST / TESTPLAN
2. **兼容优先**:文章/分类 ID、`.shtml` 内容 URL 保持可达
3. **引用不写死 CDN**:正文存 `[attach=id]` / `attach:id`,渲染期转 `/attachment.php?id=`
4. **异步 AI**Web 不阻塞 LLM;队列 / Workerman 消费
5. **默认中文**`APP_LOCALE=zh_CN`,文案走 `lang/zh_CN/*`
6. **测试**PHPUnit Feature sqlite `:memory:`(见 `phpunit.xml`);CI 同配置
## PHP / 代码风格
- 目标运行时:**PHP 8.2+**`composer.json`
- 应用代码逐步统一 `declare(strict_types=1);`
- 类型提示、返回类型、枚举优先;避免软依赖全局状态
## 一期 vs 二期
- **一期已做**:核心博客、主题引擎、插件框架、SEO/GEO、导入、AI stub 管道、前台皮肤、后台 Filament
- **一期骨架**:支付 / 会员 / 双商城(非真实结算)
- **二期**:自动配图、真实支付会员、小程序完整写接口与鉴权深化