project-timeline-board

v2.2.0

一个真正零门槛的项目时间线管理页面——只需编辑一个 JS 配置文件(projectName / 关键节点 / 甘特图 / 待办清单),即可生成包含智能时间轴、甘特图、里程碑追踪和待办看板的完整页面。自动根据当前日期判断每个节点是'已完成'/'今日'/'即将到来'/'待启动',无需手动标注;甘特图支持交互/视觉/前...

0· 81·0 current·0 all-time

Install

OpenClaw Prompt Flow

Install with OpenClaw

Best for remote or guided setup. Copy the exact prompt, then paste it into OpenClaw for ildar981105-create/project-timeline-board.

Previewing Install & Setup.
Prompt PreviewInstall & Setup
Install the skill "project-timeline-board" (ildar981105-create/project-timeline-board) from ClawHub.
Skill page: https://clawhub.ai/ildar981105-create/project-timeline-board
Keep the work scoped to this skill only.
After install, inspect the skill metadata and help me finish setup.
Use only the metadata you can verify from ClawHub; do not invent missing requirements.
Ask before making any broader environment changes.

Command Line

CLI Commands

Use the direct CLI path if you want to install manually and keep every step visible.

OpenClaw CLI

Bare skill slug

openclaw skills install project-timeline-board

ClawHub CLI

Package manager switcher

npx clawhub@latest install project-timeline-board
Security Scan
Capability signals
Crypto
These labels describe what authority the skill may exercise. They are separate from suspicious or malicious moderation verdicts.
VirusTotalVirusTotal
Benign
View report →
OpenClawOpenClaw
Benign
high confidence
Purpose & Capability
The name/description (a data-driven timeline/Gantt/todo page) matches the included files and runtime instructions. The skill only requires editing a JS config and including the HTML/JS assets; there are no unexpected binaries, services, or credentials.
Instruction Scope
SKILL.md instructs the user to copy the provided data file and include the HTML and renderer. The renderer reads window.PROJECT_CONFIG and populates the DOM. Note: several fields (extras.content and other text fields) are inserted via innerHTML/constructed HTML; if those fields contain untrusted input they will execute as HTML (XSS risk). This behavior is coherent with the purpose (allowing HTML in cards) but is security-relevant and should be considered before loading untrusted config.
Install Mechanism
No install spec and no downloads/extracts — this is an instruction-only skill with static assets (HTML/CSS/JS). That minimizes install-time risk; the only external resource referenced is Google Fonts in the HTML, which is typical for front-end pages.
Credentials
The skill requests no environment variables, credentials, or config paths. The files operate purely in-browser on supplied config data, so there is no disproportionate secret access.
Persistence & Privilege
The skill is not always: true and does not request persistent system privileges. It is a client-side renderer that does not modify other skills or system settings.
Assessment
This skill appears to do exactly what it says: render a timeline/Gantt/todo UI from a JS config with no external credentials or install steps. Before using it: (1) inspect the two JS files (project-timeline-data.js and render-from-config.js) — they are small and readable; (2) avoid loading configs from untrusted sources because the renderer inserts config fields (extras.content, todo text, detail labels, etc.) into the page as HTML/innerHTML which can execute script (XSS) if untrusted; (3) note the page loads Google Fonts (external network request) — acceptable for most uses but relevant for air-gapped environments; (4) if you will serve this on a public site, sanitize any user-provided content before putting it into PROJECT_CONFIG. Otherwise the skill is internally consistent and low-risk.

Like a lobster shell, security has layers — review code before you run it.

latestvk973ea389fr34pf2dex7p5vhd98512eg
81downloads
0stars
2versions
Updated 1w ago
v2.2.0
MIT-0

Project Timeline Board Skill — 项目时间线管理看板 v2(数据驱动版)

🎯 5 分钟上手

最简配置(复制即用)

  1. 复制 project-timeline-data.js 到你的项目目录
  2. 打开文件,修改 projectName / overview / keyNodes / ganttData / todos(每项有中文注释)
  3. 在页面中引入:
<script src="project-timeline-data.js"></script>
<script src="project-timeline.html"></script>
<script src="render-from-config.js"></script>

核心定制项(文件内均有注释)

字段说明示例值
projectName项目名称'我的项目'
overview四宫格关键日期[{date:'4.15',label:'交付',color:'blue'}]
keyNodes时间轴节点见文件内模板
ganttData甘特图模块排期[['首页',[{t:'ix',f:8,to:11}]]]
todos按周分组的待办清单见文件内模板

预计定制时间:10-15 分钟


概述

本 Skill 提供一个完全数据驱动的项目时间线页面,所有内容由 project-timeline-data.js 配置,无需修改 HTML。

四大模块:

  1. Key Nodes — 可折叠时间轴节点,自动判断 today/done/soon/later
  2. Gantt Chart — 可视化排期,支持任意模块和日期范围
  3. Todo List — 按周分组,checkbox 切换完成状态
  4. Status Overview — 四宫格数字卡片 + 信息 Callout

快速使用(3 步完成)

Step 1: 引入数据配置

<!-- 在 project-timeline.html 之前引入 -->
<script src="project-timeline-data.js"></script>

然后编辑 project-timeline-data.js,修改 window.PROJECT_CONFIG 中的所有数据。

Step 2: 引入页面

<script src="project-timeline-data.js"></script>
<script src="project-timeline.html"></script>
<script src="render-from-config.js"></script>
<!-- render-from-config.js 会自动读取 PROJECT_CONFIG 并渲染 -->

Step 3: 修改数据

编辑 project-timeline-data.js,只需改配置数据,页面自动更新。

预计定制时间:10-15 分钟


文件结构

project-timeline-board/
├── SKILL.md                          # 本文档
├── references/
│   └── timeline-css.md              # CSS 变量速查表
└── assets/
    ├── project-timeline.html         # 页面骨架(含所有 CSS,可直接浏览器打开)
    ├── project-timeline-data.js      # 项目数据配置(即改即用)
    └── render-from-config.js         # 数据驱动渲染器(自动读取配置)

PROJECT_CONFIG 完整字段说明

基本信息

window.PROJECT_CONFIG = {

  // 项目名称(显示在 Hero 标题)
  projectName: '我的项目',
  projectSubtitle: '产品设计协作时间线',

  // 项目状态:'进行中' | '已完成' | '已发布'
  status: '进行中',

  // 时间范围(显示在 Hero 元信息)
  startDate: '2026.04.07',
  endDate:   '2026.05.31',
  totalWeeks: 8,

  // Hero 区域高亮文案
  heroBadge: '交互 + 视觉 已完成',           // 状态徽章
  heroPhase: '当前阶段:...',                // 阶段说明

  // ...
};

Overview 四宫格

overview: [
  { date: '4.13', label: '交互稿完成', color: 'blue'   },
  { date: '4.14', label: '视觉稿完成', color: 'purple' },
  { date: '4.18', label: '用户测试',   color: 'cyan'  },
  { date: '5月底', label: '正式发布',  color: 'rose'  }
]

颜色可选:blue / purple / green / cyan / amber / rose

Key Nodes(关键节点)

keyNodes: [
  {
    date:    '4.09',                                // 显示日期
    title:   '交互设计启动',                         // 节点标题
    subtitle:'4.07 → 4.09 · 首批交互稿完成',        // 副标题
    color:   'blue',                               // 颜色主题
    badge:   '交互',                               // 右上角徽章
    open:    false,                                 // 是否默认展开
    active:  false,                                 // 是否当前进行中(呼吸灯)
    detail:  [                                     // 展开的子项
      { subLabel: '影视译制交互稿', subDate: '4-9' },
      { subLabel: '作品列表交互稿', subDate: '4-9' }
    ]
  },
  // ...
]

subDate 格式'M-D'(月-日),用于自动判断 today/done/soon/later

  • today — 日期 = 今天
  • done — 日期 < 今天(自动加 ✓)
  • soon — 日期 > 今天 且 距离 ≤ 3 天
  • later — 日期 > 今天 且 距离 > 3 天
  • 'post' — 始终显示 later(用于"发布后"类节点)

Gantt 甘特图

// 日期范围(只支持同一年内的整数日期)
ganttStart: 7,    // 4月7日
ganttEnd:   22,   // 4月22日

// 类型 → 颜色/标签映射
ganttColorMap: {
  ix:   { label: '交互', cls: 'ix' },
  vis:  { label: '视觉', cls: 'vis' },
  tool: { label: '工具', cls: 'tool' }
},

// 数据:[模块名, [{t:类型, f:起始日, to:结束日}, ...]]
gantt: [
  ['首页',    [{t:'vis',  f:9, to:10}]],
  ['影视译制', [{t:'ix',   f:7, to:9 }, {t:'vis', f:9, to:10}]],
  ['直播剪辑', [{t:'ix',   f:7, to:10},{t:'vis', f:11,to:13}]],
  // ...
]

Todo 待办清单

todos: [
  {
    period: '4.07 — 4.11 第一周',   // 分组标题
    count: 9,                        // 显示在标签上
    items: [
      { text: '影视译制交互稿(4.09)', tag: 'ix',     done: true  },
      { text: '启动用户测试策划',        tag: 'plan',   done: false }
    ]
  }
]

tag 类型ix(交互) / vis(视觉) / plan(规划) / collab(协作) / tool(工具) / fe(前端) / be(后端) / test(测试)

Extras 区域

Extras 支持任意数量和名称的 card,每个 card 自由定义 label / content / type:

extras: {
  testing: {
    label: '用户测试',
    content: '<strong>4.14</strong> ...'    // 可含 HTML
  },
  status: {
    label: '当前状态',
    type: 'ok',                            // 颜色:空='' / 'ok'='绿' / 'info'='蓝' / 'warn'='黄'
    content: '...'
  },
  myCard: {                                // ★ 任意 key
    label: '自定义卡片',
    content: '内容',
    type: 'info'                            // 可选:''/'ok'/'info'/'warn'
  }
}

Gantt 类型速查

类型说明CSS 颜色
ix交互设计
vis视觉设计
fe前端开发
be后端开发
tool工具/基础设施绿
test测试玫瑰红

页面结构

┌─────────────────────────────────────────────────────────┐
│  Hero 区域                                                 │
│  · 状态 Badge  · 项目名称  · 阶段说明  · 时间范围           │
├─────────────────────────────────────────────────────────┤
│  Overview 四宫格                                            │
│  [4.13 交互稿] [4.14 视觉稿] [4.18 测试] [5月底 发布]      │
├─────────────────────────────────────────────────────────┤
│  01 Key Nodes — 关键节点                                   │
│  · 时间轴 + 彩色圆点连线                                    │
│  · 点击展开详情,自动标注 today/done/soon/later chip        │
├─────────────────────────────────────────────────────────┤
│  02 Gantt — 排期甘特图                                     │
│  · 蓝色=交互 紫色=视觉 绿色=工具                           │
│  · 红色竖线=今日线                                         │
├─────────────────────────────────────────────────────────┤
│  03 To-Do — 待办清单                                       │
│  · 按周分组 · checkbox 切换 done                           │
├─────────────────────────────────────────────────────────┤
│  04 Extras — 测试 & 埋点 Callout                           │
└─────────────────────────────────────────────────────────┘

纯 HTML 使用(无需 JS 配置)

如果不引入 project-timeline-data.jsrender-from-config.js,页面会保留 HTML 中的原始内容。

这适合:

  • 想保留现成内容作为参考直接复制使用
  • 想在 HTML 内联数据做小幅修改

CSS 设计规范

参考 references/timeline-css.md

核心 CSS 变量:

--bg:#fff; --bg-2:#f8f9fb; --bg-3:#f1f3f6;
--border:#e5e7eb;
--text:#1a1a2e; --text-2:#4b5563; --text-3:#9ca3af;
--blue:#2563eb; --purple:#7c3aed; --rose:#e94560;
--green:#059669; --amber:#d97706; --cyan:#0891b2;
--font:'Noto Sans SC', sans-serif;
--font-display:'Noto Serif SC', serif;
--mono:'JetBrains Mono', monospace;
--max-w:820px;

发布到 GitHub

cd ~/.codebuddy/skills/project-timeline-board
git init
git add .
git commit -m "feat: project-timeline-board v2 data-driven"
git remote add origin https://github.com/YOUR_USERNAME/project-timeline-board.git
git push -u origin main

Comments

Loading comments...