# Body Atlas
A public interactive 2-D educational anatomy model. Twenty-three representative structures across seven system groups; not a complete atlas or a patient-specific model. Original schematic SVG geometry is approximate. Deep organs are shown through overlying structures. Anatomy content is based on linked NCI SEER training references, reviewed 2026-09-16.

## Resource links
- `https://body-atlas.jessald.fairystack.com/` — interactive atlas, public; no authentication.
- `/#<structure>` — selects an organ and its detail panel. Fixed IDs: `brain`, `spinal-cord`, `lungs`, `heart`, `liver`, `stomach`, `kidneys`, `small-intestine`, `colon`, `bladder`, `spleen`, `marrow`. Example: `https://body-atlas.jessald.fairystack.com/#heart`. Unknown identifiers show an explicit warning. Current-state links, not immutable versions.
- `/api/health` — public runtime status and version JSON.
- `/data.js` — public curated anatomy records and SVG geometry. Content updates require a tested committed deployment.

The body map and structure list share one selection. System filters dim other structures. Organ / Tissue / Cells switches the explanation without replacing the model. Search stays local, with no network polling or persistence. The full body and torso view are schematics, not 3-D reconstructions. Normal variations and reproductive, endocrine, complete muscular and peripheral vascular anatomy are outside this initial model.

Sources: https://training.seer.cancer.gov/anatomy/ . The existing cancer infographic collection is linked at https://body-atlas.jessald.fairystack.com/library/index.html#body-overview . No user data is collected by the application. Vue 3.5.21 browser production distribution is pinned and served locally; its MIT license header is retained.

## Skeletal layer
`/#skull`, `/#vertebrae`, `/#rib-cage`, `/#shoulder-girdle`, `/#pelvis`, `/#humerus`, `/#forearm`, `/#femur`, `/#lower-leg`, `/#hand-bones`, and `/#foot-bones` select skeletal structures and activate the skeletal filter. Example: `https://body-atlas.jessald.fairystack.com/#rib-cage`. Public current-state links without authentication. Bone groups are schematic; ribs, vertebral segments, hand and foot bones are not drawn as individual counts. Existing organ and marrow links remain valid. Selecting a skeletal structure from All structures activates the skeletal filter so soft tissue does not obscure it.

## Cancer spread and infographic reader
`/#cancer/<primary>/<step>` opens the illustrative spread view. Primary IDs: `colon`, `lungs`, `kidneys`, `bladder`. Steps are integers 0–4: primary, local invasion, transport, arrival, possible outcomes. Example: `https://body-atlas.jessald.fairystack.com/#cancer/colon/4`. Routes show selected examples from NCI's common metastatic sites, not all sites, patient probabilities, actual vascular geometry or a biological simulation. Bone markers use a representative femur location, not a claim about the preferred bone.

Append `?read=<chapter>` inside the fragment to open an original infographic alongside either view. Example: `https://body-atlas.jessald.fairystack.com/#cancer/colon/4?read=dormant-cancer`. The chapter IDs are in `frontend/cancer.js`; they match the existing cancer collection. `/#marrow?read=marrow-to-blood` combines anatomy and a poster. All routes are public, no authentication; unknown states show an explicit error.

Posters and transcripts are rendered by `https://body-atlas.jessald.fairystack.com/library/embed.html#<chapter>` from that app's canonical page. The atlas verifies the iframe message origin, source window and chapter. A 15-second reader deadline shows Retry and Open original if the source never reports ready. The migration preserves original poster bytes and transcripts locally; no generation was performed. Closing the reader preserves the current spread step or anatomy selection. The local collection links back to the spread view.

## Protein infographic
`/#heart?read=proteins` opens the protein poster beside the anatomy. `proteins` is also available in Cells & cancer infographics and recommended from every structure’s Cells detail tab. Uses the existing bounded reader and original image/transcript endpoint. Public current-state link, no authentication.

`/#heart?read=amino-acids` — amino acid infographic in the atlas reading panel, also available in the library and all Cells tabs. Public current-state deep link, no authentication.

## CAR-T infographic
`/#marrow?read=car-t` opens the CAR-T infographic in the existing reader. Available in the library and marrow/immune details. Public, no authentication. The corrected original generated image is hosted locally at `/images/car-t.png`; a selectable transcript and NCI source accompany it. Load failure and the existing 15-second deadline expose Retry and the original image. Closing preserves the atlas selection.
## Infographic gallery
`/infographics.html` — one selected image from the shared infographic catalog, with side-mounted previous/next arrows and clickable thumbnails. Clicking the main image opens its full-size original. `/infographics.html#<chapter-id>` selects the carousel image, e.g. `/infographics.html#proteins`. Public current-state routes, no authentication. Local images use their catalog image path; migrated cancer posters are served locally from /library/. The single-row, horizontally scrollable thumbnail strip requests only small, pre-generated thumbnails (at most 180 px). Only the selected large preview is requested. Left/Right arrow keys navigate the carousel from anywhere on the page, including the thumbnail strip; modified shortcuts and text editing are preserved. Touch/trackpad scrolling browses the strip; changing the selection brings its thumbnail into view. Clicking a thumbnail selects it without preloading the other large images. Failed or stalled thumbnails show “Preview unavailable” after at most 20 seconds and remain selectable. Switching aborts an unfinished request; a 20-second overall fetch/render deadline exposes Retry image and an original-image link. Back/forward and direct fragment links select the corresponding image. Invalid IDs show an explicit error. Header navigation appears on the atlas and gallery.

`/infographics.html#molecules` selects the molecules infographic; `/#heart?read=molecules` opens it beside the anatomy. Available from all Cells tabs. Both are public current-state links.

`/infographics.html#chemotherapy` selects the chemotherapy infographic; `/#marrow?read=chemotherapy` opens it in the atlas reader. Both are public current-state links.

`/infographics.html#protein-folding` selects the protein folding infographic; `/#heart?read=protein-folding` opens it beside the atlas. Public current-state links, no authentication.

## Common cold and migration
- `/cold/` — interactive common-cold scenario; public, no authentication. Query keys `day` (0–14), `innate` and `inflammation` (0.5–1.5), and `delay` (2–6) reproduce the selected assumptions. Example: `/cold/?day=5.0&innate=1&delay=4&inflammation=1`. Invalid values show an explicit notice. Curves use invented teaching coefficients, not patient measurements or medicine effects.
- `/cold/signalling.html` — inflammatory-signalling infographic and sourced selectable explanation.
- `/#marrow?read=neutrophils` — shared neutrophil explanation, linked from the cold model’s recruited-cell curve.
- `/#marrow?read=cold-signalling` and `/infographics.html#cold-signalling` — the same signalling artwork in the atlas reader and gallery.
- `/library/index.html#<chapter>` — locally preserved source posters and transcripts; same IDs as the catalog. `/library/embed.html#<chapter>` is the same-origin bounded reader.
- `/api/version` — deployed version and revision.
All routes above are public current-state pages. The finance source described these as educational, unauthenticated content without user data. No accounts, private financial data, secrets or databases were copied. Body Atlas history is preserved through source revision 3bf9189d0affc37af8f519c714dcbc366ae8b41b. Original source assets are preserved; the finance installation remains a recovery copy. Runtime does not depend on finance access or SSH.

Verification: `npm test`; `node tests/migration.browser.cjs <origin>` verifies anatomy, cancer reader, all gallery assets, cold-model interaction, links, mobile layout and terminal reader failure.

`/migration.json` records the source revision, asset hashes, transfer scope, verification and compatibility redirect receipts. The finance Body Atlas origin now redirects here while retaining its Git history and source assets. The old Cold Model origin redirects to `/cold/`, preserving query parameters and fragments.

Carousel verification: `node tests/carousel.browser.cjs <origin>` covers one-image network requests, deep links and history, optimized previews, abort on selection change, HTTP error, overall timeout, retry, reload recovery, focused thumbnail preservation and invalid IDs. Originals remain untouched.

`scripts/generate-thumbnails.py` rebuilds the thumbnail WebPs from unchanged original posters.

The infographic viewer uses thumbnail selection only; Previous/Next arrows sit in narrow side gutters beside the image; there is no title or link bar. Thumbnail captions wrap to at most two lines; the gallery page uses compact outer and header spacing.

## Napping
- `/napping/` — public, sourced reading page on naps and cortical plasticity; no authentication or user data.
- `/napping/#study` — appraisal of Fehér et al. (2026), DOI `10.1016/j.neuroimage.2026.121723`.
- `/napping/#methods` — expandable design and limitations; `/napping/#practice` — general adult nap guidance; `/napping/#interpretation` — assessment of the social claim. These fixed fragment IDs are current-state links, not immutable versions. Example: `https://body-atlas.jessald.fairystack.com/napping/#study`.
Navigation and the brain detail panel link to the page. The reading content works without JavaScript; no jobs or polling. Study physiology and practical advice have separate sources. Verified source image from the linked September 17 X post via its public FxTwitter mirror.
Verification: `node tests/napping.browser.cjs <origin>` checks desktop/mobile, light/dark, disclosure, source identifiers, navigation, analytics and no-JavaScript reading.

- `/napping/#brain-volume` — Paz et al. (2023) Mendelian-randomization evidence, imaging subset, confidence interval and the age-equivalence claim; `/napping/#volume-methods` — genetic assumptions and sensitivity limits. Public current-state anchors, no authentication. Example: `https://body-atlas.jessald.fairystack.com/napping/#brain-volume`. Sources include the published full text and the September 17 Max Lugavere post; distinct from the acute plasticity experiment.

## Sleep across the body
- `/#sleep/<state>/<organ>` — public qualitative sleep layer inside the main body atlas. State IDs: `wake`, `nrem`, `rem`. Organ IDs: `brain`, `heart`, `lungs`, `liver`, `marrow`. Example: `https://body-atlas.jessald.fairystack.com/#sleep/rem/heart`. Fixed IDs; invalid combinations show an explicit route error. These are current-state links, with no authentication or patient data.
- `/#sleep/nrem/brain?read=sleep` — original sleep infographic and selectable transcript in the shared reader; closing keeps the selected sleep state and organ.
- `/infographics.html#sleep` — same infographic in the existing gallery. `/images/sleep-v1.png` is the versioned original; `/images/sleep-v1.provenance.json` records the exact prompt, built-in image-generation tool, source references and asset hash. Delivery uses WebP and a small thumbnail; original bytes are preserved.

The layer compares broad physiological states, not measured sleep architecture. No numeric risk, fixed cycle duration, automatic timeline or patient forecast is simulated. Dashed lines encode functional connections to sleep regulation, not vessels or literal nerve trajectories. Liver and marrow are representative anchors for distributed metabolic and immune systems; scope notes explain missing tissues. The clock and homeostatic sleep pressure are distinct influences. Sources live in `/sleep.js` and appear with each interaction; nap evidence remains at `/napping/`.

The state controls and organ selection update the single existing Vue root synchronously. Anatomy search drafts survive switching modes. Disclosure, selected text and focus survive image completion. The existing reader owns a 15-second image deadline with terminal error, Retry and original-image link; the gallery owns its existing 20-second fetch/render deadline. No generation job runs in the app or browser.

Inventory review, 18 September 2026: the live FairyStack inventory exposed 210 apps on Jessald App Box. No dedicated sleep-physiology app was found. Dream Mirror is projective introspection; Living well is a reflective dashboard. Neither was merged or changed. Other boxes or unregistered apps were not verified.

Verification: `npm test`; `node tests/sleep.browser.cjs <origin>` covers sleep links/states, history, anatomy and cancer compatibility, search draft preservation, disclosure and selected text/focus through image completion, never-resolving image timeout/retry, gallery, desktop/mobile and light/dark. `node tests/carousel.browser.cjs <origin>` covers the shared gallery.
