# Core structure development and note building
Key project of the wiki -
- YAML Frontmatter Schema
- Page Templates
- Homepage - Maps of content
- Widgets and apps for the content
- Badges and icons - create and define
NOTE DEVELOPMENT:
## A. Note types (atomic vs overview)
- **gene**, **protein**,
- **complex**, **ligand**, **receptor**,
- **pathway**,
- **process** (e.g., EMT, ferroptosis),
- **phenotype** (e.g., desmoplasia),
- **disease** (DSRCT, Ewing),
- **drug/therapy**,
- **method** (e.g., ChIP-seq),
- **dataset**,
- **model** (cell line/PDX/xenograft),
- **study** (paper/preprint),
- **concept** (frameworks like survivability onion),
- **overview/hub** (theme pages),
- **figure/visual**.
## B. Cross-cutting facets (apply to _every_ note)
- **disease_context**: dsrct | ewing | pan-cancer | other
- **model_system**: cell_line(JN-DSRCT-1, …) | xenograft | PDX | clinical
- **evidence_strength**: Strong | Moderate | Weak | Unknown
- **evidence_type**: in_vitro | in_vivo | clinical | computational
- **data_type**: RNA-seq | ChIP-seq | ATAC-seq | WES | IHC | flow | CRISPR | imaging
- **compartment**: membrane | cytosol | nucleus | ECM | secreted
- **hallmarks**: proliferative_signaling | metabolism | angiogenesis | apoptosis_evasion | immune_evasion | invasion_metastasis | genome_instability | TME_remodelling
- **activity_state**: upregulated | downregulated | activated | inhibited (optional)
- **confidence (1–5)**,
- **curation_status**: draft | reviewed
## C. Relations (keep the verb set small and precise)
`activates`, `inhibits`, `upregulates`, `downregulates`, `binds`, `phosphorylates`, `demethylates`, `recruits`, `interacts_with`, `part_of`, `involved_in`, `expressed_in`, `essential_for`, `synthetic_lethal_with`, `implicated_in` (disease/process).
Each relation gets **{target, evidence[], confidence}**.
## D. Theme clusters (overview pages to curate)
- **Epigenetics**: PRC2/EZH2, LSD1, SWI/SNF, DNMT, HDAC, super-enhancers
- **TME & Immune**: desmoplasia/CAF, angiogenesis/VEGF, hypoxia/HIF1A, macrophages/TAMs, checkpoints (PD-1/PD-L1, B7-H3), cytokines (IL-6, IL-2/IL-15Rβ)
- **Metabolism**: glycolysis/Warburg, glutamine anaplerosis, arginine/ASS1, lactate/MCT4, AMPK/mTOR coupling
- **Cell death & DDR**: apoptosis (BCL2 family, DR4/DR5), CHK1, PARP/HRD, senescence, ferroptosis
- **Growth signalling**: IGF1R–PI3K–AKT–mTOR, RAS–RAF–MEK–ERK, PDGF/PDGFR-A, NTRK3, INSR cross-talk
- **Metastasis & Plasticity**: EMT/mesenchymal programs, adhesion/ECM, MMPs, EPCAM
- **Oncogenesis**: cell-of-origin hypotheses, fusion isoforms (±KTS), transcriptional rewiring
- **Models & Methods**: cell lines, xenografts/PDX, key assays (RNA-seq, ChIP-seq, flow)
This covers and organizes the items in your draft TOC while giving each hub a clear remit.
## 3) Front-matter “field pack” (drop into templates)
One schema, optional sub-blocks activated by `type:`. Add/omit without breaking parsers.
```yaml
---
schema:
version: 0.3
profile: "onco-entity+learning"
curator: "sam"
type: gene # gene | protein | complex | ligand | receptor | pathway | process | phenotype
# | disease | drug | method | dataset | model | study | concept | overview
id: "GENE:IGF1R" # CURIE/ID; quote values with colons
title: "IGF1R"
aliases: ["IGF-1R", "CD221"]
summary: "One-sentence, ≤200 chars."
# Cross-cutting facets
disease_context: [dsrct, ewing, pan-cancer]
model_system: [cell_line, clinical]
evidence_strength: Strong # Strong | Moderate | Weak | Unknown
evidence_type: [in_vitro, in_vivo]
data_type: [RNA-seq, IHC]
compartment: membrane
hallmarks: [proliferative_signaling, metabolism]
confidence: 4 # 1–5
curation_status: draft
# Links/IDs
links:
uniprot: "P08069"
ncbi_gene: "3480"
pmid: ["20332245"]
doi: []
# Relations (edges in your graph)
relations:
- predicate: activates
target: "PATHWAY:PI3K_AKT"
evidence: [{ pmid: "20332245" }]
confidence: 4
- predicate: interacts_with
target: "PROT:IRS1"
evidence: []
confidence: 3
# Type-specific packs (fill only what applies)
pack:
gene:
gene_family: "RTK"
isoforms: []
pathway:
members: ["PROT:IRS1", "KINASE:AKT1"]
upstream: ["RTK:IGF1R"]
downstream: ["COMPLEX:mTORC1"]
drug:
moa: "anti-IGF1R mAb"
targets: ["IGF1R"]
trial_ids: []
model:
species: human
name: "JN-DSRCT-1"
provider: ""
method:
category: "omics"
subcategory: "RNA-seq"
# Learning (optional: for card generation)
learning:
prompt: "Trace IGF1R→PI3K in 2 steps."
answer: "IGF1 binds IGF1R → IRS1 recruits PI3K → PIP3."
difficulty: 2
target_latency_sec: 20
objective_metric: "≤20s, ≥85% accuracy (last 5)"
_notes: |
Use this for free-form rationale or TODOs.
---
```
YAML & Templates
Think in “entities + evidence + relations” so everything can be graphed later.
NEED TO DEFINE-
'Entity'
Relations
**Knowledge graph (interactive):**
nodes = entity notes;
edges = your `relations`. Add size/colour by `confidence`, `evidence_count`, or `type` so patterns pop.
**Evidence matrix:** rows = interventions, columns = targets/pathways; cells = strength/replication and model type (in vitro/PDX/clinical). Great for “where are the holes?”.
**Microenvironment lens:** filters for “immune”, “stroma”, “vasculature”, “metabolism”; same content, different facet.
**Uncertainty dial:** every page has `confidence:` and `replication:` → render badges; let users filter to “high-confidence only.”
**Core entity pages (one note per entity):**
- **Gene / protein** (e.g., _ASS1_, _EZH2_)
- **Pathway / process** (e.g., IL-6→STAT3, arginine metabolism)
- **Phenotype / hallmark** (e.g., immune evasion, desmoplasia)
- **Microenvironment cell** (e.g., CAF, T cell, endothelium)
- **Model** (cell line, PDX, organoid)
- **Intervention** (drug/class/combo), **Trial**, **Case report**
- **Data resource / dataset**
# 5) A couple of high-leverage UX flourishes
- **Evidence badges & tooltips:** Render `confidence:` and `replication:` as little tokens next to headings; hover shows “why?” with links to the underlying papers.
- **Facet filters on big tables:** Add small JS in `publish.js` to filter by `model:` (cell line/PDX/clinical) and `axis:` (immune/stroma/metabolism).
- **Canonical IDs everywhere:** Put HGNC/UniProt/PMID in YAML for disambiguation and future data pulls.
- **Callouts for “Open Questions” and “Contradictions”.** Make them first-class citizens so holes become visible targets for reading.
---
**Gene** page template (`Targets/ASS1.md`)
```yaml
title: ASS1
type: gene
ids:
hgnc: 756
entrez: 445
aliases: [Argininosuccinate synthase 1]
functions: [urea-cycle, arginine-biosynthesis]
status:
role: potential vulnerability
confidence: medium
relations:
- type: auxotrophy_for
target: Arginine
evidence: [PMID:12345678, PMID:23456789]
- type: pathway_link
target: Urea-cycle
direction: loss_of_function
notes: >
Frequent dysfunction in DSRCT suggested → arginine dependence hypothesis.
```
Pathway page template (`Pathways/IL6-STAT3.md`)
```yaml
title: IL-6 / STAT3
type: pathway
axes: [immune, stromal]
effects: [immunosuppression, fibrosis]
relations:
- type: activates
source: IL-6
target: STAT3
evidence: [PMID:...]
therapies:
candidates: [Tocilizumab, Ruxolitinib]
rationale: >
Dampens suppressive loop; may improve T-cell function and stroma.
```
Paper page template (`Papers/Smith2024-ASS1-loss.md`)
```yaml
title: ASS1 loss sensitizes DSRCT to arginine deprivation
type: paper
pmid: 12345678
year: 2024
model: [PDX, cell-line]
species: human
cohort: n=12
claims:
- statement: ASS1 frequently downregulated in DSRCT
evidence_level: moderate
supports: [{type: auxotrophy_for, target: Arginine}]
- statement: Arginine depletion reduces growth in vitro
evidence_level: preliminary
links: [doi:..., pdf:...]
```
## Map Project
Current status: Idea
Cellular mapping
Ribbonfarm style territory map
---
How to solve it book - Lens application
---
Tally up studies good bad neutral/mixed
Icons +/-
Evidence levels
Can be like, in this cancer target was an inhibitor, conversely it can be a promoter in xyz situation
Cell surface proteins - generally only accept water soluble ligands - for receptor targets, intervention has to be water soluble - many phytochems are not
For DSRCT studies table, make and host some icons of the journal ie nature etc
---
# Widgets and apps -
js dashboard
## Your interactive **p5.js** cell console (two solid ways to embed)
### Easiest & robust: host as a tiny site and iframe it
I bundled your uploaded sketch into a minimal static site:
- `index.html` (loads p5 from CDN)
- `sketch.js` (your `DSRCT_dashboard_idea.js`)
- `config.js` (mapping from nodes → your wiki URLs)
- `styles.css`
Download → deploy anywhere static (Cloudflare Pages/GitHub Pages/Vercel) → embed via iframe. **Download:** dsrct_dashboard_site.zip
**Quick deploy (Cloudflare Pages):**
1. Create a new Pages project, drag-drop the zip contents (or push a repo).
2. Set the subdomain, e.g. `https://lab.yourdomain.com/`.
3. In your Obsidian note, add:
```html
<div class="viz-wrap">
<iframe src="https://lab.yourdomain.com/" title="DSRCT Systems Lab Console" loading="lazy"></iframe>
</div>
```
…and in `publish.css`:
```css
.viz-wrap{position:relative; width:100%; aspect-ratio:16/10; max-height:80vh}
.viz-wrap iframe{position:absolute; inset:0; width:100%; height:100%; border:0}
```
**Deep-linking your wiki from the sketch:** edit `config.js` in the bundle.
```js
window.DSRCT_LINK_MAP = {
"EWS–WT1": "/Biology/EWS-WT1",
"ASS1": "/Targets/ASS1",
"EZH2": "/Targets/EZH2",
"STAT3": "/Pathways/IL6-STAT3",
"VEGF-A": "/Microenvironment/Angiogenesis",
};
// Call this from clicks inside your sketch: window.DSRCT_OPEN("ASS1")
```
Inside your sketch, wherever a node/chip is clicked, call:
```js
if (window.DSRCT_OPEN) window.DSRCT_OPEN(nodeIdOrUrl);
```
Why iframe? It cleanly bypasses Publish’s HTML sanitization and keeps your sketch code separate and easy to iterate. Obsidian officially documents iframe embeds, and some external sites restrict embedding—hosting your own subdomain avoids that.
---
## Badges and icons - create and define
In Vitro - Petri dish or test tube
In Vivo - Mice
In Vivo - PDX Mice
In Vivo - Zebrafish?
In Silico
Clinical
Theory
Paper
Gene
DSRCT Evidence
Gedanken experiment
Game theory - logically optimise sequential set of of insults
The immortals... usually it's a mistake to send your best army first
Keep them primed for the final blow
We just need to cause population collapse from an ecological perspective
If the environment and the conditions are not hospitable, mathematically there can be a tipping point of population collapse but everything up to that point will make it stronger in the long run. Disasters, rapid environmental changes, civil disorder. How do you make a species extinct?