File size: 2,497 Bytes
12f2f67
3e0a34d
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
12f2f67
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
62
63
64
65
66
67
68
69
70
71
72
73
74
<!doctype html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Browser Symptom Pattern Explorer</title>
    <link rel="stylesheet" href="./styles.css" />
  </head>
  <body>
    <main>
      <header>
        <p class="eyebrow">Transformers.js v4 feasibility prototype</p>
        <h1>Browser Symptom Pattern Explorer</h1>
        <p><strong>Starter revision: S1-2026-07-29</strong></p>
        <p class="lede">
          A bounded research instrument that ranks ten condition labels using a
          small model running on your device.
        </p>
      </header>

      <aside class="boundary">
        <strong>Not a diagnostic or triage tool.</strong> It cannot determine
        what condition a person has, rule out emergencies, or recommend care.
        Use fictional or published test cases, never private patient data.
      </aside>

      <section class="workbench">
        <form id="analysis-form">
          <label for="symptoms">Fictional symptom description</label>
          <textarea
            id="symptoms"
            rows="8"
            placeholder="Example: fever, dry cough, fatigue, body aches"
          ></textarea>
          <div class="actions">
            <button type="submit">Run local model</button>
            <button type="button" id="compare" class="secondary" disabled>
              Test reversed symptom order
            </button>
          </div>
        </form>

        <div class="output">
          <p class="output-label">Ranked model signals</p>
          <ol id="results" class="results">
            <li class="empty">No run yet.</li>
          </ol>
          <p class="score-note">
            Scores show the model's fit to each label. They are not calibrated
            probabilities, accuracy estimates, or medical confidence.
          </p>
        </div>
      </section>

      <div id="red-flags" class="red-flags" hidden></div>

      <section class="instrument">
        <div>
          <span>Runtime</span>
          <strong id="runtime">Model not loaded</strong>
        </div>
        <div>
          <span>Status</span>
          <strong id="status">Ready for a fictional test case.</strong>
        </div>
        <button type="button" id="download" class="secondary" disabled>
          Download local run log
        </button>
      </section>
    </main>
    <script type="module" src="./src/app.js"></script>
  </body>
</html>