arff-instructor / classroom.html
Superboss1976's picture
Upload folder using huggingface_hub
780d628 verified
Raw History Blame Contribute Delete
7.06 kB
<!doctype html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width,initial-scale=1"><meta name="theme-color" content="#071320"><title>Prof Classroom | AM Risk & Training</title><link rel="icon" href="assets/badge.png"><link rel="stylesheet" href="classroom.css"><script type="importmap">{"imports":{"three":"./vendor/three.module.js"}}</script></head><body>
<a class="skip" href="#lesson-title">Skip to lesson</a>
<header><a class="brand" href="index.html#home"><img src="assets/badge.png" alt="AM Risk badge"><span>AM RISK & TRAINING<small>CLASSROOM STUDIO</small></span></a><span class="session-light" id="mode-pill">● INSTRUCTOR LEADS</span><button id="projector">Projector view ↗</button><button id="export-session">Export session</button></header>
<main><div class="intro"><div><p class="eyebrow">YOUR EXPERTISE. PROF AT YOUR SIDE.</p><h1>Teach together.</h1><p>Brief the class, explore in 3D, then hand Prof a section when you’re ready.</p></div><div class="course-picker"><label for="course-select">TODAY’S COURSE</label><select id="course-select"></select><small id="course-status"></small></div></div>
<div class="studio"><aside class="lesson-rail"><p class="eyebrow">SESSION PLAN</p><div id="lesson-list"></div><div class="rail-note"><b>You lead the class.</b><p>Prof presents one section, then waits for discussion. Take back control at any time.</p><span id="progress-label">0 sections presented</span></div><a href="mthatha.html">Open Mthatha practice lab ↗</a></aside>
<section class="stage"><div class="scene-shell"><div id="classroom-scene" role="img" aria-label="Illustrative 3D classroom exercise"><p id="scene-fallback" hidden>3D unavailable. The lesson, controls and transcript remain usable.</p></div><div class="scene-caption"><span id="scene-label">ILLUSTRATIVE TRAINING SCENE</span><b id="scene-topic"></b></div><div class="scene-controls"><button data-view="overview">Overview</button><button data-view="side">Side</button><button data-view="top">Above</button><button id="scene-pause">Pause animation</button></div></div>
<div class="lesson-body"><p><a href="airside.html">Launch AVOP + radio decision mission ↗</a></p><div class="lesson-meta"><span id="step-label"></span><span>DRAFT TEACHING MATERIAL</span></div><h2 id="lesson-title" tabindex="-1"></h2><p id="lesson-objective"></p><div class="spoken" id="spoken" aria-live="polite">Ready for your briefing.</div><div class="transport"><button class="primary" id="handover">▶ Prof, present this section</button><button id="pause-prof" disabled>Pause Prof</button><button class="takeback" id="takeback">■ Take back control</button></div><div class="next-row"><button id="previous">← Previous</button><span id="narration-status" role="status">Instructor in control</span><button id="next">Next section →</button></div>
<details><summary>Review or adapt Prof’s script</summary><label for="script">Script for this section</label><textarea id="script" maxlength="6000" rows="6"></textarea><p>Edits stay in this tab and are included only when you export the session. Editing does not approve a course.</p><a id="course-source" target="_blank" rel="noopener">Course source ↗</a> <a id="signal-source" hidden target="_blank" rel="noopener">Signal reference ↗</a></details>
<section class="discussion"><p class="eyebrow">PAUSE & DISCUSS</p><h3 id="question"></h3><div id="answers"></div><p id="feedback" role="status"></p></section></div></section>
<aside class="prof-panel"><div class="prof-identity"><div id="prof-avatar" aria-label="Stylised animated Prof guide"></div><div><span class="eyebrow">YOUR TEACHING PARTNER</span><h2>Prof</h2><small id="voice-label">Device voice · stylised animation</small></div></div>
<div class="assistant-tabs"><button data-tab="listen" aria-pressed="true">Listen</button><button data-tab="library" aria-pressed="false">Library</button><button data-tab="connect" aria-pressed="false">Connections</button></div>
<div data-panel="listen"><h3>Follow the classroom</h3><p>Prof can suggest a relevant section from your words. You choose whether to show it.</p><label class="check"><input id="mic-consent" type="checkbox">The class knows the microphone will be used. Browser speech recognition may send audio to its provider.</label><button id="listen" class="wide">Start listening</button><p id="mic-status" role="status">Microphone off. Transcript stays in this tab.</p><label class="check"><input id="voice-commands" type="checkbox">Enable instructor voice commands on this microphone</label><small>Uses exact commands such as “Prof take over” or “Prof stop”. No speaker identification: use the instructor’s microphone only. The stop button is always available.</small><div class="transcript" id="transcript" aria-live="polite">Recognised words will appear here.</div><form id="transcript-form"><label for="typed-transcript">Or type a classroom note / instructor command</label><textarea id="typed-transcript" rows="2" maxlength="2000" placeholder="We are discussing holding points…"></textarea><button type="submit">Follow this note</button></form><div id="suggestion" role="status"></div><button id="clear-transcript">Clear transcript</button></div>
<div data-panel="library" hidden><h3>Teaching material</h3><p>Select a local text note, photograph or video. It stays on this device; nothing is uploaded.</p><label for="material-file">Add a teaching asset</label><input id="material-file" type="file" multiple accept=".txt,.md,image/*,video/*,audio/*"><div id="materials"></div><div id="media-preview"></div><form id="library-form"><label for="library-query">Ask from course material</label><input id="library-query" maxlength="500" placeholder="Try: holding point"><button type="submit">Find supporting material</button></form><div id="library-results" aria-live="polite"></div><p class="small">The public demo searches this lesson and text files you select. On the local node, Prof can also search installed course packs and use the configured local model.</p></div>
<div data-panel="connect" hidden><h3>What is connected</h3><dl><dt>Lesson delivery</dt><dd>Authored script + device narration</dd><dt>3D</dt><dd>Interactive apron and procedural marshaller</dd><dt>Training node</dt><dd id="node-connection">Checking this host…</dd><dt>NVIDIA Audio2Face</dt><dd>Not connected — requires a compatible GPU service and a rigged avatar</dd><dt>Notion</dt><dd>Course source references; no live synchronisation</dd></dl><p class="small">This course prototype is not endorsed or accredited by ACI or ICAO. The instructor selects the applicable course material and editions.</p><a href="https://huggingface.co/collections/nvidia/audio2face-3d" target="_blank" rel="noopener">NVIDIA avatar technology ↗</a></div>
</aside></div><footer>AM RISK & TRAINING <span>TRAIN TODAY. FOR A SAFER TOMORROW.</span><small>Session notes are practice records, not competency decisions.</small></footer></main><script type="module" src="classroom.js?v=classroom-20260920"></script></body></html>