-
Notifications
You must be signed in to change notification settings - Fork 13
Expand file tree
/
Copy pathHowItWorks.js
More file actions
61 lines (59 loc) · 1.99 KB
/
Copy pathHowItWorks.js
File metadata and controls
61 lines (59 loc) · 1.99 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
import styles from './HowItWorks.module.css'
const steps = [
{
number: '1.0',
name: 'Record',
description:
'Do the task once while OpenAdapt captures screens and inputs.',
},
{
number: '2.0',
name: 'Compile',
description:
'The demonstration becomes an editable script: visual anchors, per-step assertions, parameters.',
},
{
number: '3.0',
name: 'Run',
description:
'Deterministic replay in milliseconds, locally, no per-run model calls.',
},
{
number: '4.0',
name: 'Self-heal',
description:
'When the UI drifts, a fallback ladder finds the target and proposes the fix as a diff.',
},
{
number: '5.0',
name: 'Audit',
description:
'Every run produces an illustrated report: what ran, what it saw, what changed.',
},
]
export default function HowItWorks() {
return (
<section id="how-it-works" className={styles.section}>
<div className={styles.inner}>
<h2 className={styles.heading}>How it works</h2>
<p className={styles.subheading}>
A demonstration compiler: one recording in, a deterministic
automation out.
</p>
<ol className={styles.steps}>
{steps.map((step) => (
<li key={step.number} className={styles.step}>
<span className={styles.number}>{step.number}</span>
<div className={styles.body}>
<h3 className={styles.name}>{step.name}</h3>
<p className={styles.description}>
{step.description}
</p>
</div>
</li>
))}
</ol>
</div>
</section>
)
}