Site: Vite 8 skeleton for Workers static assets; task lists
This commit is contained in:
13 files changed
+1445
-1
No files matched your search
+4
-1
@@ -14,8 +14,11 @@ verdict="tasks/reviews/$id-r$round.md"
|
||||
mkdir -p tasks/reviews
|
||||
rm -f "$verdict"
|
||||
|
||||
# The list that holds the item.
|
||||
list=$(grep -l -- "] $id " tasks/TASKS.md site/TASKS.md site/video/TASKS.md | head -n 1)
|
||||
[ -n "$list" ] || { echo "review.sh: no item $id in any task list" >&2; exit 2; }
|
||||
prompt="You review item $id of Ely Office, round $round. Work dir is the project root; agents.md holds the rules.
|
||||
Read the line for $id in tasks/TASKS.md and the PRD.md sections it cites.
|
||||
Read the line for $id in $list and the PRD.md sections it cites; the items before it in that list are done.
|
||||
Scope: $scope
|
||||
Find defects only: behavior that breaks the PRD, errors swallowed, silent fallbacks, dead code, files over 500 lines, comments over one line or ten words, boxes inside boxes or useless subtitles in UI, abstractions with one user, missing or weak tests, claims no evidence backs. Build and run the tests yourself.
|
||||
Copies of the tree you build for probes use their own CARGO_TARGET_DIR, never ./target: crates bake their source path in. Delete those copies and their target dirs before you write the verdict; keep only small logs.
|
||||
|
||||
@@ -0,0 +1,3 @@
|
||||
node_modules/
|
||||
dist/
|
||||
.wrangler/
|
||||
@@ -0,0 +1,20 @@
|
||||
# 官网任务
|
||||
|
||||
进度真相。从上到下逐条完成,每条完成后由 `scripts/review.sh` 交 codex 审查,通过才进下一条,每条最多五轮。
|
||||
|
||||
要求(用户 2026-10-09 定):
|
||||
- 整站是等轴 2.5D 微缩模型:无透视,统一等轴角度,平行线永远平行;体积只靠同一颜色在三个面上的明暗,不用投影;层级是高度,分类是区域,关系是道路与相邻;状态用具象小道具,不用抽象标签;组件像积木,有厚度,交互上浮或下沉一格;动效逐格生长、按节拍落位。
|
||||
- 美学:标题粗、正文细且淡;留白约常规的 1.5 倍;90% 白灰黑,10% 单一强调色;无渐变、高饱和、霓虹与复杂卡片;无大框套小框,无无用说明与小标题;控件在用户表现出意图时才出现;以渲染结果为准,不以计算值为准。
|
||||
- 地址 workers.dev;中英两种语言;Vite 8 + pnpm;文件不超过 500 行,注释一行十字以内,无 dead code,出错即暴露,不过度设计。
|
||||
|
||||
- [ ] S1 工程骨架:`site/` 下 Vite 8 + pnpm、TypeScript、无框架;`wrangler.jsonc` 只用静态资源(`assets.directory`,`404-page`);`pnpm build` 出 `dist/`,`pnpm preview` 可看;构建失败即报错
|
||||
- [ ] S2 等轴几何:一种投影(真等轴,30°),无透视;积木由同一颜色的顶、左、右三面明暗构成,不用投影阴影;网格单位与高度单位;屏幕面(贴截图的平面)沿同一角度
|
||||
- [ ] S3 首屏模型:一张桌面上的微缩模型,六个应用是六座积木建筑,按区域排布;高度表达层级;应用之间的真实连接(ElyMark→ElyTree、导出→ElyPDF)是道路;载入时逐格生长、按节拍落位
|
||||
- [ ] S4 交互:积木悬停上浮一格、按下下沉一格;控件在悬停、聚焦或靠近时才出现;键盘可达,焦点可见;系统减少动效时不播放生长
|
||||
- [ ] S5 六个区域:每个应用一个区域,真实截图贴在等轴屏幕面上,正文只写做什么;状态用具象小道具(离线、开源、本地文件)
|
||||
- [ ] S6 中英两种语言:按浏览器语言选择,可切换;文案只在一处
|
||||
- [ ] S7 下载与源码:链接 v0.1.0 发布页的六个 DMG 与源码包,写明 macOS 14、Apple Silicon、未公证的打开方式、AGPL
|
||||
- [ ] S8 窄屏与无障碍:手机宽度无横向滚动,模型缩放而不变形;文字可被读屏读到;色彩对比达标
|
||||
- [ ] S9 端到端测试:Playwright 核对首屏渲染、语言切换、全部外链可达、无控制台错误、减少动效
|
||||
- [ ] S10 上线:`wrangler deploy` 到 workers.dev,线上地址逐项复核
|
||||
- [ ] S11 agents.md:写入官网的技术栈、目录与部署命令
|
||||
@@ -0,0 +1,13 @@
|
||||
<!doctype html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<title>Ely Office</title>
|
||||
<meta name="description" content="Six offline desktop apps for documents, sheets, slides, PDF, Git and Markdown." />
|
||||
</head>
|
||||
<body>
|
||||
<main id="app"></main>
|
||||
<script type="module" src="/src/main.ts"></script>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,16 @@
|
||||
{
|
||||
"name": "ely-office-site",
|
||||
"private": true,
|
||||
"type": "module",
|
||||
"scripts": {
|
||||
"dev": "vite",
|
||||
"build": "tsc && vite build",
|
||||
"preview": "vite preview",
|
||||
"deploy": "pnpm build && wrangler deploy"
|
||||
},
|
||||
"devDependencies": {
|
||||
"typescript": "6.0.3",
|
||||
"vite": "8.3.4",
|
||||
"wrangler": "4.149.0"
|
||||
}
|
||||
}
|
||||
Generated
+1318
File diff suppressed because it is too large.
Load diff
@@ -0,0 +1,7 @@
|
||||
allowBuilds:
|
||||
esbuild: true
|
||||
workerd: true
|
||||
minimumReleaseAgeExclude:
|
||||
- miniflare@5.20261006.1-alpha
|
||||
- vite@8.3.4
|
||||
- wrangler@4.149.0
|
||||
@@ -0,0 +1,11 @@
|
||||
<!doctype html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<title>Not found · Ely Office</title>
|
||||
</head>
|
||||
<body>
|
||||
<p>Not found. <a href="/">Ely Office</a></p>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,5 @@
|
||||
import "./style.css";
|
||||
|
||||
const app = document.querySelector<HTMLElement>("#app");
|
||||
if (!app) throw new Error("index.html has no #app");
|
||||
app.textContent = "Ely Office";
|
||||
@@ -0,0 +1,10 @@
|
||||
:root {
|
||||
color-scheme: light;
|
||||
font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "PingFang SC", sans-serif;
|
||||
color: #1d1d1f;
|
||||
background: #fbfbfa;
|
||||
}
|
||||
|
||||
body {
|
||||
margin: 0;
|
||||
}
|
||||
@@ -0,0 +1,20 @@
|
||||
{
|
||||
"compilerOptions": {
|
||||
"target": "es2023",
|
||||
"module": "esnext",
|
||||
"lib": ["ES2023", "DOM"],
|
||||
"types": ["vite/client"],
|
||||
"skipLibCheck": true,
|
||||
"moduleResolution": "bundler",
|
||||
"allowImportingTsExtensions": true,
|
||||
"verbatimModuleSyntax": true,
|
||||
"moduleDetection": "force",
|
||||
"noEmit": true,
|
||||
"strict": true,
|
||||
"noUnusedLocals": true,
|
||||
"noUnusedParameters": true,
|
||||
"erasableSyntaxOnly": true,
|
||||
"noFallthroughCasesInSwitch": true
|
||||
},
|
||||
"include": ["src"]
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
# 发布视频任务
|
||||
|
||||
约 90 秒,1080p,可直接导出。真实使用录屏加等轴微缩场景,配乐由代码合成。
|
||||
|
||||
- [ ] V1 分镜与节拍:每个镜头的起止秒数、内容与对应节拍,整片按一个节拍网格剪
|
||||
- [ ] V2 配乐:按节拍网格合成原创曲,WAV,无版权问题
|
||||
- [ ] V3 真实录屏:六个应用各录真实操作(打开文件、编辑、导出等),1080p 以上,英文界面
|
||||
- [ ] V4 等轴场景:用官网同一套渲染器逐帧导出(无头浏览器,固定帧时间),开场、转场与结尾
|
||||
- [ ] V5 合成:录屏贴入等轴屏幕面或全屏,字幕中英,音画按节拍对齐
|
||||
- [ ] V6 导出与核对:H.264 + AAC MP4,时长约 90 秒,逐段检查画面与声音
|
||||
@@ -0,0 +1,8 @@
|
||||
{
|
||||
"name": "ely-office",
|
||||
"compatibility_date": "2026-10-08",
|
||||
"assets": {
|
||||
"directory": "./dist",
|
||||
"not_found_handling": "404-page"
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user