Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 4 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,11 +6,11 @@ A polished, clickable prototype of a JoVE product concept: a Lab Operating Syste

> ### Confidential prototype. Not an official JoVE product.
>
> This repository is an internal product **concept** and an **unofficial prototype**, not an official JoVE product, feature, or release. It runs entirely on **synthetic data** and contains **no real JoVE assets, customer data, or content**. The "AI" is scripted, not a real model. This is **NDA-sensitive** and **not for external distribution**.
> This repository is an internal product **concept** and an **unofficial prototype**, not an official JoVE product, feature, or release. It contains **no real JoVE assets, customer data, or content**, and the "AI" is scripted, not a real model. The lab seed is built from **real, publicly available** information about one real lab (the McClean Lab at UW-Madison, via its public website and OpenWetWare wiki); a small set of non-public fields (the per-person training matrix, joined dates, and the departing/new-hire timing) is **clearly marked as illustrative demo data**, since capturing exactly those fields is the product's own value proposition. See the integrity boundary at the top of `src/lib/data.ts`. This is **NDA-sensitive** and **not for external distribution**.

**Live demo:** https://labos-prototype.vercel.app

It is built to be shown to stakeholders (scientists and executives) *instead of* a written PRD. Every flow is set on a single cohesive fictional lab, the **Okafor Lab** (Neurodegeneration and iPSC Models, UC San Diego), so the data stays consistent end to end.
It is built to be shown to stakeholders (scientists and executives) *instead of* a written PRD. Every flow is set on a single cohesive real lab, the **McClean Lab** (biological signal processing in yeast, Dept. of Biomedical Engineering, UW-Madison), populated from that lab's public website and OpenWetWare wiki, so the data stays consistent end to end. Non-public fields are marked as demo (see `src/lib/data.ts`).

![joVE | LabOS landing page](./_screenshots/v2/01-landing.png)

Expand Down Expand Up @@ -84,7 +84,7 @@ labos-prototype/
├─ src/
│ ├─ app/ # Next.js App Router: landing, layout, and /flows/* routes
│ ├─ components/ # brand, landing, shell, graph, tour, ui, and the four flows
│ └─ lib/ # synthetic data, graph builder, scripted "AI", and types
│ └─ lib/ # real-lab seed (+ marked demo fields), graph builder, scripted "AI", types
├─ _screenshots/ # full-page captures of every flow, the landing, and the tour
├─ DESIGN-SYSTEM.md # design tokens, color, type, and component conventions
├─ tailwind.config.ts # the JoVE design-token source of truth
Expand All @@ -97,6 +97,6 @@ The visual language (tokens, the WCAG-AA JoVE palette, typography, and component

## Status and disclaimer

This is an early-stage **prototype** built to communicate a product concept. It uses **synthetic data only**, no real JoVE assets, and no real AI. It is **proprietary and confidential**, **NDA-sensitive**, and **not for external distribution**.
This is an early-stage **prototype** built to communicate a product concept. The lab seed is real, publicly sourced data about the McClean Lab (with non-public fields clearly marked as illustrative demo); it uses no real JoVE assets and no real AI. It is **proprietary and confidential**, **NDA-sensitive**, and **not for external distribution**.

All rights reserved. This is not open-source software and ships with no license grant.
7 changes: 4 additions & 3 deletions src/components/flows/BrainFlow.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ import {
EXAMPLE_QUESTIONS,
CHAT_SCRIPTS,
} from "@/lib/scripts";
import { LAB } from "@/lib/data";
import type { ChatTurn, Citation } from "@/lib/types";
import {
Sparkle,
Expand Down Expand Up @@ -58,7 +59,7 @@ export function BrainFlow() {
variant: "abstain",
confidence: "abstain",
text:
"I can only answer from the Okafor Lab's own captured knowledge, and I don't have a grounded source for that yet. I won't guess at a lab procedure. If this is a real gap, capture it and route it to the right owner.",
"I can only answer from the McClean Lab's own captured knowledge, and I don't have a grounded source for that yet. I won't guess at a lab procedure. If this is a real gap, capture it and route it to the right owner.",
followUp: "Capture this gap",
} as ChatTurn);

Expand Down Expand Up @@ -102,12 +103,12 @@ export function BrainFlow() {
<div>
<div className="flex items-center gap-2 text-sm font-bold text-ink">
Lab Brain
<span className="chip py-0.5 text-[10px]">Okafor Lab</span>
<span className="chip py-0.5 text-[10px]">{LAB.name}</span>
</div>
<div className="flex items-center gap-1.5 text-xs text-muted">
<span className="h-1.5 w-1.5 rounded-full bg-status-verified" />
Grounded in <span className="num">6</span> protocols,{" "}
<span className="num">3</span> tacit notes,{" "}
<span className="num">4</span> tacit notes,{" "}
<span className="num">10</span> skills
</div>
</div>
Expand Down
Loading
Loading