// Open Labbook Dapp — git-style research collaboration.
// Layout: file tree / commit history + paper viewer / metadata sidebar.
function LabbookDapp() {
const sidebar = (
<>
NOTEBOOK
NB-219 / Glia–Neuron Pruning
main · 142 commits
PREPRINT
OPEN
>
);
return (
Fork
Watch · 28
New experiment
>}
/>
{/* Commit graph */}
3 PENDING REVIEW}>
{[
{ h: '8f2a91c', who: 'malcolm.h', msg: 'fit: re-fit hierarchical model w/ updated covariates', t: '12m', tags: ['ANALYSIS'] },
{ h: '4b18e7d', who: 'a.mwangi', msg: 'data: add cohort 4 (n=18) raw 2P stacks', t: '1h', tags: ['DATA', 'IPFS'] },
{ h: '01c9a3f', who: 'r.tanaka', msg: 'protocol: revise tissue clearing step 4 → 30min', t: '3h', tags: ['PROTOCOL'] },
{ h: 'aa7f42e', who: 'malcolm.h', msg: 'fig: regenerate Figure 3 with new color map', t: '6h', tags: ['FIGURE'] },
{ h: 'c0e4d12', who: 'k.iyer', msg: 'review: respond to issue #14 — multiple comparisons', t: '1d', tags: ['REVIEW'] },
{ h: '7d3b890', who: 'a.mwangi', msg: 'merge: pull request #11 from astro-cohort-4', t: '1d', tags: ['MERGE'] },
].map((c, i) => (
{c.h}
{c.msg}
{c.who}
{c.tags.map(t => {t})}
{c.t}
+0.{Math.floor(Math.random()*9)}
))}
Add bounty}>
{[
{ id: 'EXP-22', t: 'Replicate astrocyte ablation in P14 mice', who: 'OPEN — 320 UBR', prog: 0.6, st: 'Running · cohort 3/5', tone: 'info' },
{ id: 'EXP-21', t: 'Wet-lab: GFAP staining of fixed slices', who: 'a.mwangi · 240 UBR', prog: 0.9, st: 'Awaiting review', tone: 'warn' },
{ id: 'EXP-20', t: 'Re-run analysis pipeline on cohort 4', who: 'r.tanaka · 80 UBR', prog: 1.0, st: 'Complete · merged', tone: 'ok' },
{ id: 'EXP-19', t: 'Translation: Mandarin abstract', who: 'OPEN — 60 UBR', prog: 0, st: 'Bounty open', tone: 'accent' },
].map(e => (
))}
{/* Right rail */}
{[
['malcolm.h', 'Conceptualization · Writing', 38],
['a.mwangi', 'Investigation · Data curation', 24],
['r.tanaka', 'Methodology · Protocols', 18],
['k.iyer', 'Formal analysis · Software', 12],
['j.osei', 'Validation · Visualization', 6],
['l.park (anon)', 'Peer review', 2],
].map((c, i) => (
{c[0][0].toUpperCase()}
{c[2]}%
))}
{[
['NIH BRAIN Init.', 9000, 'ok'],
['UCSF Internal Grant', 4000, 'ok'],
['VitaDAO co-fund', 1200, 'ok'],
['Public bounty pool', 3800, 'warn'],
].map((f, i) => (
{f[2] === 'ok' ? 'COMMITTED' : 'PENDING'}, w: '110px' },
{ v: f[1].toLocaleString(), style: { textAlign: 'right' }, w: '60px' },
]} />
))}
1,420 UBR
Auto-funded from publication & access fees. Claimable by any verified researcher who supports or refutes the result.
Claim a reproduction
);
}
window.LabbookDapp = LabbookDapp;