tangled
alpha
login
or
join now
e.xyehr.cn
/
One-Calendar
5
fork
atom
One Calendar is a privacy-first calendar web app built with Next.js. It has modern security features, including e2ee, password-protected sharing, and self-destructing share links 📅
calendar.xyehr.cn
5
fork
atom
overview
issues
pulls
pipelines
Refine deep-dive section to English and remove roadmap
Evan Huang
3 weeks ago
545bec1c
33758e56
+31
-72
1 changed file
expand all
collapse all
unified
split
components
landing
deep-dive.tsx
+31
-72
components/landing/deep-dive.tsx
···
2
2
3
3
const useCases = [
4
4
{
5
5
-
title: "个人深度工作规划",
5
5
+
title: "Deep work planning for individuals",
6
6
detail:
7
7
-
"用 Focus Block、提醒和周视图管理整块时间,把真正重要的事情提前锁定,减少被临时会议打断的概率。",
7
7
+
"Use focus blocks, reminders, and weekly planning to protect meaningful work and reduce context-switching from unplanned meetings.",
8
8
},
9
9
{
10
10
-
title: "小团队协作排期",
10
10
+
title: "Small team release coordination",
11
11
detail:
12
12
-
"用共享日历做版本发布、设计评审、复盘节奏管理,所有关键节点都能在同一个时间轴上清晰可见。",
12
12
+
"Run launch timelines, design reviews, retrospectives, and milestone checks on one shared timeline with less operational noise.",
13
13
},
14
14
{
15
15
-
title: "学习与考试管理",
15
15
+
title: "Study and exam scheduling",
16
16
detail:
17
17
-
"把课程、作业、考试、复习计划拆分成可执行事件,支持跨月追踪,让长期目标变成每天可完成的小步骤。",
17
17
+
"Break long-term goals into daily executable events, then track classes, assignments, revision windows, and exam deadlines across months.",
18
18
},
19
19
{
20
20
-
title: "跨时区远程协作",
20
20
+
title: "Cross-time-zone collaboration",
21
21
detail:
22
22
-
"统一查看不同时区的可用时间,减少来回沟通成本,快速找到双方都能接受的会议窗口。",
22
22
+
"Quickly find realistic meeting windows across regions and keep recurring coordination predictable for distributed teams.",
23
23
},
24
24
{
25
25
-
title: "内容创作发布流水线",
25
25
+
title: "Content production pipeline",
26
26
detail:
27
27
-
"把选题、写作、设计、审核、发布和复盘做成连续时间链路,避免任务堆积和发布冲突。",
27
27
+
"Map ideation, writing, design, review, publishing, and post-launch analysis as one continuous flow to avoid delivery bottlenecks.",
28
28
},
29
29
{
30
30
-
title: "家庭事务与生活安排",
30
30
+
title: "Family and life operations",
31
31
detail:
32
32
-
"把家庭活动、就医预约、孩子课程、旅行计划同步在一个视图中,减少遗漏和时间冲突。",
32
32
+
"Manage appointments, school activities, travel plans, and household commitments in a single view so critical events are not missed.",
33
33
},
34
34
];
35
35
36
36
const principles = [
37
37
-
"默认简洁:首屏信息克制,核心操作不被干扰。",
38
38
-
"默认可迁移:始终支持导入导出,不将用户锁在单一平台。",
39
39
-
"默认可审计:开源实现可被社区验证。",
40
40
-
"默认尊重隐私:以隐私优先作为产品前提,而不是付费附加项。",
41
41
-
"默认高效率:键盘快捷键、快速编辑、低阻力交互贯穿全流程。",
42
42
-
"默认可扩展:从个人安排到团队协作都能平滑演进。",
43
43
-
];
44
44
-
45
45
-
const roadmap = [
46
46
-
{
47
47
-
phase: "阶段 01",
48
48
-
title: "核心体验稳定化",
49
49
-
items: ["周/月/年视图精细优化", "交互延迟持续降低", "移动端排版完善"],
50
50
-
},
51
51
-
{
52
52
-
phase: "阶段 02",
53
53
-
title: "协作能力增强",
54
54
-
items: ["共享权限粒度增强", "多人编辑冲突提示", "团队模板预设"],
55
55
-
},
56
56
-
{
57
57
-
phase: "阶段 03",
58
58
-
title: "自动化与智能建议",
59
59
-
items: ["重复任务智能生成", "空闲时段推荐", "提醒策略自动化"],
60
60
-
},
61
61
-
{
62
62
-
phase: "阶段 04",
63
63
-
title: "生态整合扩展",
64
64
-
items: ["更多第三方同步入口", "企业身份体系接入", "开放 API 稳定发布"],
65
65
-
},
37
37
+
"Simplicity by default: keep first-view information clean and distraction-free.",
38
38
+
"Portability by default: always support import/export and avoid platform lock-in.",
39
39
+
"Auditability by default: open implementation that can be reviewed by the community.",
40
40
+
"Privacy by default: privacy-first design as a baseline, not a premium add-on.",
41
41
+
"Speed by default: keyboard shortcuts and low-friction editing for high-frequency workflows.",
42
42
+
"Scalability by default: grow smoothly from personal planning to team-level coordination.",
66
43
];
67
44
68
45
export function LandingDeepDive() {
69
46
return (
70
47
<section id="deep-dive" className="border-b border-white/10 py-24 md:py-28">
71
48
<LandingTitle as="h2" className="text-3xl font-semibold leading-tight text-white md:text-5xl">
72
72
-
更完整的落地场景
49
49
+
More complete real-world scenarios
73
50
<br />
74
74
-
和产品路线
51
51
+
and product direction
75
52
</LandingTitle>
76
53
<p className="mt-4 max-w-3xl text-base text-[var(--landing-muted)] md:text-lg">
77
77
-
不只是“一个能记日程的日历”,而是从个人效率到团队协作都能长期使用的时间操作系统。
54
54
+
One Calendar is more than a place to store events. It is a practical time operating system for individual focus,
55
55
+
team execution, and long-term planning continuity.
78
56
</p>
79
57
80
58
<div className="mt-12 grid gap-4 md:grid-cols-2 xl:grid-cols-3">
···
86
64
))}
87
65
</div>
88
66
89
89
-
<div className="mt-14 grid gap-10 lg:grid-cols-[1fr_1fr]">
90
90
-
<div>
91
91
-
<LandingTitle as="h3" className="text-2xl font-semibold text-white md:text-3xl">产品原则</LandingTitle>
92
92
-
<ul className="mt-5 space-y-3">
93
93
-
{principles.map((item) => (
94
94
-
<li key={item} className="rounded-lg border border-white/10 px-4 py-3 text-sm text-[var(--landing-muted)] md:text-base">
95
95
-
{item}
96
96
-
</li>
97
97
-
))}
98
98
-
</ul>
99
99
-
</div>
100
100
-
101
101
-
<div>
102
102
-
<LandingTitle as="h3" className="text-2xl font-semibold text-white md:text-3xl">路线图</LandingTitle>
103
103
-
<div className="mt-5 space-y-4">
104
104
-
{roadmap.map((step) => (
105
105
-
<article key={step.phase} className="rounded-lg border border-white/10 p-4">
106
106
-
<p className="text-xs uppercase tracking-[0.14em] text-[var(--landing-subtle)]">{step.phase}</p>
107
107
-
<p className="mt-2 text-lg font-medium text-white">{step.title}</p>
108
108
-
<ul className="mt-3 list-disc space-y-1 pl-5 text-sm text-[var(--landing-muted)]">
109
109
-
{step.items.map((point) => (
110
110
-
<li key={point}>{point}</li>
111
111
-
))}
112
112
-
</ul>
113
113
-
</article>
114
114
-
))}
115
115
-
</div>
116
116
-
</div>
67
67
+
<div className="mt-14">
68
68
+
<LandingTitle as="h3" className="text-2xl font-semibold text-white md:text-3xl">Product principles</LandingTitle>
69
69
+
<ul className="mt-5 grid gap-3 md:grid-cols-2">
70
70
+
{principles.map((item) => (
71
71
+
<li key={item} className="rounded-lg border border-white/10 px-4 py-3 text-sm text-[var(--landing-muted)] md:text-base">
72
72
+
{item}
73
73
+
</li>
74
74
+
))}
75
75
+
</ul>
117
76
</div>
118
77
</section>
119
78
);