Crystals of calcium oxalate grow into a stone in the kidney. It is often silent until it moves into the ureter and blocks it.
Installation
bunx shadcn@4.22.1 add @organui/kidney-stonesThis adds kidney-stones.tsx, the disease's data and component, to your components directory. It is built on the disease viewer and reuses the models of the kidneys, which install with it.
Usage
import { KidneyStones } from "@/components/kidney-stones"
export function KidneyStonesDemo() {
return <KidneyStones />
}Every structure is a finding: affected structures are amber and spared ones muted. Select one, in 3D or in the panel, to read what the disease does there.
Course
Set stage or defaultStage to one of these. Each stage changes which structures are affected and the investigations to expect.
- Renal stone
"renal-stone"A stone in the kidney. Small ones are watched; larger ones are broken up with shock waves or removed through a scope.
Affects 1 structure of the kidneys.
- Renal colic
"colic"The stone moves into the ureter. Waves of severe loin-to-groin pain come with each contraction; most stones under 5 mm pass on their own.
Affects 2 structures of the kidneys.
- Infected
"infected"Infection behind the blocked ureter. Fever with an obstructed kidney is an emergency: drain it with a stent or nephrostomy before the stone is treated.
Affects 2 structures of the kidneys.
Without Panel
Hide the panel to place the model in your own layout, and choose the scale and stage with props.
Controlled
Drive the stage, scale and selection from your own state, such as a patient's timeline.
API Reference
Import KidneyStonesProps from the same file as KidneyStones.
| Prop | Type | Default | Description |
|---|---|---|---|
scale | "kidneys" | — | Control the scale shown. |
defaultScale | "kidneys" | "kidneys" | Choose the scale shown first. |
onScaleChange | (scale: string) => void | — | Receive the scale a reader chooses. |
stage | "renal-stone" | "colic" | "infected" | — | Control the stage shown. |
defaultStage | "renal-stone" | "colic" | "infected" | "renal-stone" | Choose the stage shown first. |
onStageChange | (stage: string) => void | — | Receive the stage a reader chooses. |
selectedId | string | null | null | Control the selected structure ID. |
onSelectionChange | (id: string | null) => void | — | Receive selections from the model and the panel. |
panel | boolean | true | Show the stages, scales, findings and investigations beside the model. |
className | string | — | Set the layout of the model and the panel. |
Other props, such as visibility, controls, defaultView and ref, go to the organ viewer.
Models and licences
The component code is MIT. Each model keeps its own licence, and the viewer shows its credit; see Licences before hiding it.
- Kidneys: BodyParts3D, © The Database Center for Life Science licensed under CC Attribution 4.0 International, CC BY 4.0.
Educational, not for diagnosis or clinical decisions. The findings summarise typical disease; individual patients differ.