Skip to content

Commit 5e64409

Browse files
Add OSA platform presentation page
Add presentations section under OSA docs with: - YouTube recording embed (full-width) - Embedded interactive Reveal.js slides - Summary of key topics covered - Attribution to Agentic Presentation Builder Slides built as static files served alongside docs.
1 parent 2a15847 commit 5e64409

62 files changed

Lines changed: 4314 additions & 0 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

docs/osa/presentations/index.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
# Presentations
2+
3+
Talks and presentations about the Open Science Assistant.
4+
5+
| Date | Title | Description |
6+
|------|-------|-------------|
7+
| 2026 | [OSA Platform Overview](osa-platform.md) | Architecture, community onboarding, knowledge pipeline, and roadmap |
Lines changed: 78 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,78 @@
1+
# OSA Platform Overview
2+
3+
An overview of the Open Science Assistant platform: architecture, community onboarding, knowledge pipeline, and roadmap.
4+
5+
## Recording
6+
7+
<div class="embed-container">
8+
<iframe
9+
src="https://www.youtube.com/embed/Uo0xQZMx534"
10+
title="OSA Platform Overview - Recording"
11+
frameborder="0"
12+
allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture"
13+
allowfullscreen>
14+
</iframe>
15+
</div>
16+
17+
## Interactive Slides
18+
19+
<div class="embed-container">
20+
<iframe
21+
src="../slides/osa-platform/presentation.html?presentation=./osa-platform.json"
22+
title="OSA Platform Overview - Slides"
23+
frameborder="0"
24+
allowfullscreen>
25+
</iframe>
26+
</div>
27+
28+
<p class="slide-hint">Use arrow keys to navigate. Press <kbd>F</kbd> for fullscreen, <kbd>?</kbd> for shortcuts.</p>
29+
30+
<style>
31+
.embed-container {
32+
position: relative;
33+
padding-bottom: 56.25%; /* 16:9 */
34+
height: 0;
35+
overflow: hidden;
36+
border: 1px solid var(--md-default-fg-color--lightest);
37+
border-radius: 8px;
38+
margin-bottom: 1.5rem;
39+
}
40+
.embed-container iframe {
41+
position: absolute;
42+
top: 0;
43+
left: 0;
44+
width: 100%;
45+
height: 100%;
46+
border-radius: 8px;
47+
}
48+
.slide-hint {
49+
margin: -0.5rem 0 1.5rem 0;
50+
font-size: 0.75rem;
51+
color: var(--md-default-fg-color--lighter);
52+
}
53+
.slide-hint kbd {
54+
font-size: 0.7rem;
55+
padding: 0.1rem 0.3rem;
56+
border: 1px solid var(--md-default-fg-color--lightest);
57+
border-radius: 3px;
58+
background: var(--md-code-bg-color);
59+
}
60+
</style>
61+
62+
## Summary
63+
64+
The Open Science Assistant is an extensible AI platform that serves small research communities from a single lab server. Key points covered:
65+
66+
- **Design philosophy**: Precision over features; researchers need accurate, citation-backed answers
67+
- **Architecture**: Cloudflare Worker edge proxy, FastAPI + LangGraph backend, SQLite FTS5 knowledge stores
68+
- **Community onboarding**: One YAML file creates a full AI assistant with API routes, tools, and knowledge sync
69+
- **6 live communities**: HED, EEGLAB, BIDS, MNE-Python, NEMAR, FieldTrip
70+
- **Two-tier tool system**: Auto-generated knowledge tools from YAML plus custom Python plugins
71+
- **Knowledge pipeline**: 5 sources (GitHub, OpenALEX, mailing lists, Discourse, docstrings) synced into per-community databases
72+
- **Smart FAQ generation**: Two-stage LLM pipeline reducing costs by ~85%
73+
- **Embeddable widget**: One script tag to add an AI assistant to any project website
74+
- **Future directions**: Multi-assistant delegation across communities, ephemeral preview backends for self-service onboarding
75+
76+
---
77+
78+
<small>Interactive slides built with [Agentic Presentation Builder](https://github.com/casual-vibers/agent-presentation), a JSON-to-Reveal.js presentation tool.</small>
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
function o(e){for(var c=e.length/6|0,n=new Array(c),a=0;a<c;)n[a]="#"+e.slice(a*6,++a*6);return n}const r=o("4e79a7f28e2ce1575976b7b259a14fedc949af7aa1ff9da79c755fbab0ab");export{r as s};

docs/osa/presentations/slides/osa-platform/assets/arc-29arUbpb.js

Lines changed: 1 addition & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
function t(r){return typeof r=="object"&&"length"in r?r:Array.from(r)}export{t as a};

docs/osa/presentations/slides/osa-platform/assets/blockDiagram-68f4deed-Bn8LQiq7.js

Lines changed: 118 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

docs/osa/presentations/slides/osa-platform/assets/c4Diagram-15b5d702-B89gf5Rd.js

Lines changed: 10 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
import{aH as o,aI as n}from"./main-BvA2blq7.js";const t=(a,r)=>o.lang.round(n.parse(a)[r]);export{t as c};

docs/osa/presentations/slides/osa-platform/assets/classDiagram-d40c83e7-CLjfeWty.js

Lines changed: 2 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)