Skip to content

Commit 0034a38

Browse files
committed
Refine PsyFlow homepage and changelog
1 parent 00e16ff commit 0034a38

17 files changed

Lines changed: 185 additions & 189 deletions

website/content/en/tutorials/cli-and-runtime.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ psyflow init
3535
## Run a task in human mode
3636

3737
```bash
38-
psyflow-run path/to/task
38+
psyflow-run task-path
3939
```
4040

4141
This resolves the task entry and forwards into the task-local `main.py`.
@@ -51,7 +51,7 @@ but the shortcut is better for consistent task-path handling.
5151
## Run QA mode
5252

5353
```bash
54-
psyflow-qa path/to/task --config config/config_qa.yaml
54+
psyflow-qa task-path --config config/config_qa.yaml
5555
```
5656

5757
What QA mode does now:
@@ -64,7 +64,7 @@ What QA mode does now:
6464
Use `--set-maturity` if you want promotion behavior:
6565

6666
```bash
67-
psyflow-qa path/to/task --config config/config_qa.yaml --set-maturity smoke_tested
67+
psyflow-qa task-path --config config/config_qa.yaml --set-maturity smoke_tested
6868
```
6969

7070
Typical QA artifacts live under `outputs/qa/`:
@@ -78,21 +78,21 @@ Typical QA artifacts live under `outputs/qa/`:
7878
## Run simulation mode
7979

8080
```bash
81-
psyflow-sim path/to/task --config config/config_scripted_sim.yaml
81+
psyflow-sim task-path --config config/config_scripted_sim.yaml
8282
```
8383

8484
For task-specific responders, switch to the sampler profile:
8585

8686
```bash
87-
psyflow-sim path/to/task --config config/config_sampler_sim.yaml
87+
psyflow-sim task-path --config config/config_sampler_sim.yaml
8888
```
8989

9090
The older docs used `config/config_sim.yaml`. That is no longer the current standard.
9191

9292
## Validate the task package
9393

9494
```bash
95-
psyflow-validate path/to/task
95+
psyflow-validate task-path
9696
```
9797

9898
Validation now covers more than folder existence. The current validator also checks:

website/content/en/tutorials/getting-started.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -66,10 +66,10 @@ PsyFlow still assumes a task-local `main.py`, but the runtime modes are now expl
6666
The framework ships shortcut commands so you do not have to remember mode-specific `python main.py ...` invocations:
6767

6868
```bash
69-
psyflow-run path/to/task
70-
psyflow-qa path/to/task
71-
psyflow-sim path/to/task --config config/config_scripted_sim.yaml
72-
psyflow-validate path/to/task
69+
psyflow-run task-path
70+
psyflow-qa task-path
71+
psyflow-sim task-path --config config/config_scripted_sim.yaml
72+
psyflow-validate task-path
7373
```
7474

7575
## Load config the current way

website/content/en/tutorials/qa-and-validation.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ PsyFlow now expects more than “it runs once on my machine.” The maintained w
1111
Run QA mode with:
1212

1313
```bash
14-
psyflow-qa path/to/task --config config/config_qa.yaml
14+
psyflow-qa task-path --config config/config_qa.yaml
1515
```
1616

1717
On a passing run, PsyFlow can promote maturity in `taskbeacon.yaml` and refresh the README maturity badge.
@@ -33,7 +33,7 @@ Treat those as review artifacts, not incidental debug files.
3333
Use static validation even when you do not want to launch the task:
3434

3535
```bash
36-
psyflow-validate path/to/task
36+
psyflow-validate task-path
3737
```
3838

3939
The validator now covers much more than directory shape:
@@ -51,13 +51,13 @@ That last point matters. The framework now actively guards against hardcoded par
5151
Use simulation when you want deterministic or plugin-based responses without a real participant:
5252

5353
```bash
54-
psyflow-sim path/to/task --config config/config_scripted_sim.yaml
54+
psyflow-sim task-path --config config/config_scripted_sim.yaml
5555
```
5656

5757
If you need a task-specific sampler responder:
5858

5959
```bash
60-
psyflow-sim path/to/task --config config/config_sampler_sim.yaml
60+
psyflow-sim task-path --config config/config_sampler_sim.yaml
6161
```
6262

6363
## Responder protocol

website/content/zh/tutorials/cli-and-runtime.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -29,15 +29,15 @@ psyflow init
2929
## human 模式
3030

3131
```bash
32-
psyflow-run path/to/task
32+
psyflow-run task-path
3333
```
3434

3535
这会自动解析任务目录或 `main.py`,然后用 human 模式调用任务入口。
3636

3737
## QA 模式
3838

3939
```bash
40-
psyflow-qa path/to/task --config config/config_qa.yaml
40+
psyflow-qa task-path --config config/config_qa.yaml
4141
```
4242

4343
QA 模式现在不只是“跑一下看看”。
@@ -73,7 +73,7 @@ psyflow-sim . --config config/config_sampler_sim.yaml
7373
## validate
7474

7575
```bash
76-
psyflow-validate path/to/task
76+
psyflow-validate task-path
7777
```
7878

7979
这个命令现在会检查:

website/content/zh/tutorials/qa-and-validation.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ PsyFlow 现在不再把 “能跑一次” 当成发布标准。当前维护中
1111
先用 QA 跑一遍任务:
1212

1313
```bash
14-
psyflow-qa path/to/task --config config/config_qa.yaml
14+
psyflow-qa task-path --config config/config_qa.yaml
1515
```
1616

1717
默认会在 `outputs/qa/` 下面留下结构化产物,例如:
@@ -29,7 +29,7 @@ psyflow-qa path/to/task --config config/config_qa.yaml
2929
如果你只想先检查任务包,不想真正启动 PsychoPy,可以直接运行:
3030

3131
```bash
32-
psyflow-validate path/to/task
32+
psyflow-validate task-path
3333
```
3434

3535
当前 validator 会覆盖:
@@ -47,13 +47,13 @@ psyflow-validate path/to/task
4747
如果你需要无被试的重复性测试,可以用 simulation:
4848

4949
```bash
50-
psyflow-sim path/to/task --config config/config_scripted_sim.yaml
50+
psyflow-sim task-path --config config/config_scripted_sim.yaml
5151
```
5252

5353
如果任务需要自己的 responder:
5454

5555
```bash
56-
psyflow-sim path/to/task --config config/config_sampler_sim.yaml
56+
psyflow-sim task-path --config config/config_sampler_sim.yaml
5757
```
5858

5959
## 推荐顺序
61.9 KB
Loading
70.1 KB
Loading

website/src/app/changelog/page.tsx

Lines changed: 27 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -1,51 +1,40 @@
1-
import { changelog, siteData } from "@/lib/generated";
1+
import { changelog } from "@/lib/generated";
2+
3+
const releaseBackgrounds = [
4+
"bg-[#fffdf9]",
5+
"bg-[#eef8ff]",
6+
"bg-[#fff3ed]",
7+
"bg-[#efffe9]",
8+
"bg-[#f4f0ff]"
9+
] as const;
210

311
export default function ChangelogPage() {
412
return (
5-
<div className="space-y-12 pb-8">
6-
<section className="grid gap-8 lg:grid-cols-[minmax(0,1fr)_320px] lg:items-end">
7-
<div>
8-
<div className="pf-badge">Changelog</div>
9-
<h1 className="mt-5 max-w-4xl font-heading text-5xl font-bold leading-[0.94] text-[#25314d] sm:text-6xl">
10-
Read releases as one clear update at a time.
11-
</h1>
12-
<p className="mt-5 max-w-3xl text-base leading-8 text-slate-700">
13-
This page follows the current repository history instead of over-indexing on one stale package
14-
version. Each release is shown as one readable block.
15-
</p>
16-
</div>
17-
18-
<div className="pf-frame bg-[#fffdf9] p-5">
19-
<div className="space-y-3 text-sm leading-7 text-slate-700">
20-
<div className="rounded-[18px] border-2 border-[#25314d] bg-[#eef8ff] px-4 py-3 shadow-[0_4px_0_#25314d]">
21-
Latest changelog release: {siteData.latest_release?.version ?? "unknown"}
22-
</div>
23-
<div className="rounded-[18px] border-2 border-[#25314d] bg-[#fff3ed] px-4 py-3 shadow-[0_4px_0_#25314d]">
24-
Package metadata version: {siteData.project.version ?? "unknown"}
25-
</div>
26-
</div>
27-
</div>
13+
<div className="space-y-8 pb-8">
14+
<section>
15+
<h1 className="font-heading text-4xl font-bold leading-[0.95] text-[#25314d] sm:text-5xl lg:text-6xl">
16+
Changes
17+
</h1>
2818
</section>
2919

3020
<section className="space-y-5">
31-
{changelog.map((release) => (
32-
<article key={release.version} className="pf-frame bg-[#fffdf9] p-6 sm:p-7">
33-
<div className="flex flex-col gap-3 sm:flex-row sm:items-center sm:justify-between">
34-
<div>
35-
<div className="pf-section-chip bg-[#ddd7f4]">Version {release.version}</div>
36-
<h2 className="mt-4 font-heading text-3xl font-bold text-[#25314d]">{release.date}</h2>
21+
{changelog.map((release, index) => (
22+
<article
23+
key={release.version}
24+
className={`pf-frame p-5 sm:p-6 ${releaseBackgrounds[index % releaseBackgrounds.length]}`}
25+
>
26+
<div className="flex flex-col gap-2 sm:flex-row sm:items-baseline sm:justify-between">
27+
<div className="text-xs font-bold uppercase tracking-[0.16em] text-slate-500">
28+
Version {release.version}
3729
</div>
30+
<div className="text-sm font-medium text-slate-600">{release.date}</div>
3831
</div>
39-
<ul className="mt-6 space-y-3 text-sm leading-7 text-slate-700">
32+
33+
<div className="mt-5 space-y-3 text-sm leading-7 text-slate-700">
4034
{release.summary.map((item) => (
41-
<li
42-
key={`${release.version}:${item}`}
43-
className="rounded-[18px] border-2 border-[#25314d] bg-white px-4 py-3 shadow-[0_4px_0_#25314d]"
44-
>
45-
{item}
46-
</li>
35+
<p key={`${release.version}:${item}`}>{item}</p>
4736
))}
48-
</ul>
37+
</div>
4938
</article>
5039
))}
5140
</section>

website/src/app/globals.css

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@ body {
2626
@apply font-sans antialiased;
2727
color: var(--pf-ink);
2828
background: var(--pf-paper);
29+
overflow-x: hidden;
2930
}
3031

3132
.pf-grid-bg {
@@ -140,6 +141,23 @@ body {
140141
}
141142
}
142143

144+
@media (max-width: 640px) {
145+
.pf-frame {
146+
border-radius: 24px;
147+
}
148+
149+
.pf-frame-soft {
150+
border-radius: 18px;
151+
}
152+
153+
.pf-button-primary,
154+
.pf-button-secondary,
155+
.pf-button-ghost {
156+
width: 100%;
157+
padding: 0.85rem 1.05rem;
158+
}
159+
}
160+
143161
@media (prefers-reduced-motion: reduce) {
144162
html {
145163
scroll-behavior: auto;

website/src/app/layout.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ export default function RootLayout({ children }: Readonly<{ children: React.Reac
1919
<body>
2020
<div className="pf-grid-bg min-h-screen">
2121
<SiteHeader />
22-
<main className="mx-auto w-full max-w-7xl px-4 pb-12 pt-32 sm:px-6 lg:px-8">{children}</main>
22+
<main className="mx-auto w-full max-w-7xl px-4 pb-12 pt-28 sm:px-6 sm:pt-32 lg:px-8">{children}</main>
2323
<SiteFooter />
2424
</div>
2525
</body>

0 commit comments

Comments
 (0)