Public Profile
Every animal has a public profile — a read-only page anyone can view without an account. This is the page QR codes link to. The intended audience is buyers, vets, and inspectors: people who need to see the animal's morph, lineage, and any welfare flags, without needing keeper-level access.
URL shape
The public profile lives at /p/[your-space-slug]/[animal-code]. For the demo collection, that's something like /p/demo-collection/F1-23. The space slug is set when you create the space; the animal code is the short label you picked on the animal form. Both are stable — you can rename the slug and code, but URLs printed on QR labels obviously won't follow.
QR codes
The animal page has a QR button that generates a printable code linking to the public profile. The convention is one QR per tub or cage — stick it to the rack slot, the cage door, the carry-pail. When someone scans it with a phone, the public profile opens in their browser. No login, no app install.
QRs are good for:
- Tubs and racks. A vet visiting the room can scan a tub and see exactly which animal lives there, who its parents were, and what morph it is. No keeper needed in the loop.
- Sales. A buyer at a show scans the carry-pail and sees the morph string, hatch date, and any welfare flags before committing. This shifts the buyer disclosure burden onto the page rather than relying on you remembering every detail.
- Inspections. Some jurisdictions require a per-animal record at the enclosure. A QR + permanent profile satisfies that with less paper.
What shows on the profile
- Morph string — visual traits first, then hets in canonical order. This is the same string the keeper sees on the animal page.
- Species + scientific name — useful for vets and inspectors who care about the species, not the morph.
- Sex, hatch date, age — calculated.
- Lineage — parents (if recorded), and the offspring this animal produced.
- Welfare flags — if the animal carries a trait with a documented welfare concern (Spider, Hidden Gene Woma, Champagne, Enigma, Lemon Frost), a dedicated card explains the condition in plain English. See Welfare flags.
- Photos — the gallery if you've uploaded any.
What does NOT show on the profile
This is intentional:
- Sales / buyer info. No buyer names, no prices, no reservation history.
- Feedings / weighings / sheddings / medications. The husbandry log is keeper-internal — buyers don't need it, and showing it makes every public profile a vet-record dump.
- Internal notes. The notes field on an animal is private.
- Other animals in your collection. No "see siblings" link, no tour of the rack. Each profile stands alone.
The minimalism is the point: the public profile is a buyer-facing card, not a transparent window into your operation. If you want to publicise more — clutch siblings, a podcast about the line, your contact details — that goes on a website you own, not on a per-animal record.
Welfare flags surface
When an animal expresses a trait with a welfare_concern in the catalog, a prominent card appears on the public profile between the hero section and the general info. The text is plain English, no genetics jargon — written so a first-time buyer understands what they are looking at.
The lethal flag (the trait's super form being non-viable) does not show on the public profile in itself, because the animal you're looking at is by definition not a lethal homozygote. The welfare concern, however, applies to every het carrier — that's why it surfaces.
This is intentional buyer disclosure. If you breed Spider and don't tell the buyer about the wobble, that's on you. The public profile makes the disclosure automatic and unmissable.
Privacy
There is no opt-out for the public profile today — every animal in every space has one. The URL is guessable if someone has your space slug and animal code, so treat it as semi-public: anyone with the link can see it. If a full opt-out becomes a real concern (sensitive species, secret projects), we'd add a "hide profile" toggle on the animal — flag it and we'll prioritise.
If you want an animal genuinely private to you today, the answer is: don't print the QR and don't share the URL.