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:
@@ -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
|
||||
- **一期骨架**:支付 / 会员 / 双商城(非真实结算)
|
||||
- **二期**:自动配图、真实支付会员、小程序完整写接口与鉴权深化
|
||||
Reference in New Issue
Block a user