技术文档

开发者文档

public 是网站根目录;src 包含代码,storage 保存不可公开访问的 SQLite 数据库。

开发è€

文档

产品和强制决定

That's My Dash 0.8.1 是面向多用户的个人网络起始页。需要 PHP 8.2+、SQLite å’Œ HTTPS。不得把 MySQLã€å‘½ä»¤è¡Œå®‰è£ æˆ–æ‰‹åŠ¨å¯¼å ¥æ•°æ®åº“å˜æˆè¦æ±‚ã€‚çŽ°æœ‰æ•°æ®åº“é‡‡ç”¨å¢žé‡å‡çº§ï¼›config.php 和整个 storage ç›®å½•å¿ é¡»ä¿ç•™ã€‚

ç•Œé¢æ”¯æŒå «ç§è¯­è¨€ï¼Œè‹±è¯­æ˜¯æŠ€æœ¯åŽå¤‡è¯­è¨€ã€‚

架构

  • public 是预期的网站根目录。
  • src åŒ
  • å«è¯·æ±‚å¤„ç†ã€æ•°æ®åº“ã€å®‰å ¨å’Œå¤–éƒ¨ HTTP 调用。

  • views åŒ
  • 含模板,不得修改数据库。

  • storage åŒ
  • 含 SQLiteã€ç¼“å­˜å’Œæœ¬åœ°è¯­è¨€è¦†ç›–ï¼Œå¿ é¡»ä¿æŒç§æœ‰ã€‚

  • public/index.php 依次执行操作、加载页面上下文并显示视图。

代码和数据规则

  • 使用严格类型和 PDO 预处理查询。
  • 修改个人数据时å¿
  • é¡»åŒ å«å½“å‰ç”¨æˆ· id。

  • 对输出进行转义,不å
  • è®¸ç”¨æˆ·æä¾› HTML。

  • 所有写å
  • ¥ä½¿ç”¨ POST、CSRF、验证和所有权检查。

  • 迁移å¿
  • é¡»æ˜¯å¢žé‡ã€å¹‚ç­‰å¹¶å‘åŽå ¼å®¹ã€‚

  • 核心编辑功能无需 JavaScript 也能工作。

安å

¨ã€æ— éšœç¢å’Œè¯­è¨€

å¤–éƒ¨è¯·æ±‚ä» å è®¸ HTTPS,阻止私有网络,并限制重定向、时间和大小。Google 日历是可选功能。技术目标是 WCAG 2.2 AA:语义 HTML、键盘操作、可见焦点、缩放、减少动画和高对比度。语言文件位于 languages,本地修改位于 storage/languages。不得翻译 :place å’Œ {query}。

发布检查

运行 PHP、JavaScript、JSON å’Œè¯­è¨€æ£€æŸ¥ã€‚æµ‹è¯•å ¨æ–°å®‰è£ å’Œå‡çº§ã€æ‰‹æœºå’Œæ¡Œé¢ã€æµ è‰²å’Œæ·±è‰²ä¸»é¢˜ã€è§’è‰²ã€ç”¨æˆ·éš”ç¦»ã€é”®ç›˜ã€å±å¹•é˜ è¯»å™¨å’Œç¼©æ”¾ã€‚æ›´æ–° VERSION、README、CHANGELOG、PROJECT_STATUS 和审计记录。