Pediatrics
A children's clinic asks things of a patient file that an adult clinic never does. How was this child born, and at how many weeks? Who brings them, and who may sign for treatment? What are they eating now, and since when? And the one every visit turns on: are they growing?
The Pediatrics plugin puts all of that in one section of the patient file, under one switch. A clinic that does not see children never sees any of it.
Where to Find It
| Screen | Address |
|---|---|
| The pediatric section of a child's file | /view-patient/{id} |
| The pediatric dashboard | /pediatric-dashboard |
| The switch | /plugin-settings |
Settings → Plugins → Pediatrics. If your clinic registered as a pediatric clinic, it is already on.
This is the growth tab, grown up
If your clinic has been using Growth Tracking, you already have this plugin — every measurement you have ever recorded is exactly where it was. The tab is now the top of a wider section, and nothing was moved or lost.
How the section is laid out
Everything below lives on the Pediatrics tab of the patient file, and a strip of buttons across the top of it chooses which part you are looking at — one at a time, not nine stacked down a long page:
Growth chart · Birth record · Guardians · Newborn checks · Vaccination card · Milestones · Vitals · Dose calculator · Feeding
The growth chart is first and is what opens — it is the question every visit turns on. The number on a button is what is worth your attention there before you open it: growth measurements, guardians on file, newborn checks, vaccinations due or late, milestones flagged as a concern, sets of vitals recorded, feeding entries. The dose calculator appears only for someone who may write in the medical file.
Moving between them keeps your place: a half-filled form or an open row is still there when you come back.
The address bar names the part you are on — /view-patient/1007#rec-pediatrics/vaccinations — so a link you send a colleague, or a page you refresh, opens on the same one. The physiotherapy, nutrition and dental sections read the same way.
The birth record
Filled once per child, edited whenever you learn more:
| Field | Why it is there |
|---|---|
| Date and time of birth | The time matters only in the first days, so it is optional |
| Weeks and days of gestation | What tells you a small four-month-old is a two-month-old who arrived early |
| Delivery | Vaginal, caesarean, assisted |
| Birth weight, length, head circumference | The first point of the growth chart |
| APGAR at 1 and 5 minutes | |
| Feeding at birth | Breast, formula or mixed |
| Born at | The hospital or place |
| Weaning started | Filled later, when it happens |
A child born before 37 weeks is marked Preterm at the top of the record.
Birth measurements are not stored twice
Birth weight, length and head circumference are saved as a growth measurement dated the day of birth — so they appear as the first point on the chart, and there is never a second answer to what the child weighed at birth. Correcting the birth weight corrects that point; it does not add another.
The birth date must match the date of birth on the patient's record. If they disagree, the system says so rather than quietly writing over one of them — one of the two is a typo, and only you know which.
Feeding and weaning
Feeding is the first thing to change when a child stops gaining, and the first thing you ask about when they do. So it is recorded as a timeline, not as a single field:
- Feeding change — the mode (breast, formula, mixed, family food), the date it started, how often, how much.
- Food introduced — what was introduced, when, and whether anything happened.
The mode the child is on today is shown at the top with the date it began. Every earlier entry stays on the file, so a visit six months from now can still see that mixed feeding started in May.
Nothing here is required. A visit where feeding was not discussed leaves the last entry standing.
Guardians and brothers and sisters
A child is not the contact. The phone number on a child's record is almost always the mother's, written there because there was nowhere else to put it — which is why four siblings used to look like four duplicate patients.
Record the people who actually bring the child:
- Name, phone, national ID, email
- Relationship — mother, father, grandparent, other
- Primary contact — the one the clinic calls. The first guardian you add becomes it automatically, because a child with guardians and nobody to call is worse than a default.
- May consent to treatment — so a doctor knows who can sign.
Enter a guardian once. When you type a name or number the system offers whoever is already in the clinic — pick her instead of typing her again, and she becomes one person attached to both children. Change her phone once and it changes for all of them.
Brothers and sisters appear on their own. Any child sharing a guardian is listed at the bottom of the section, with their age, one click away. Nothing is stored: fix the family and the list is right immediately.
Siblings are no longer duplicates
Two children on the same mother's number used to be reported as possible duplicates of each other. Once they share a guardian, they are not — and two unrelated patients on one number still are.
Removing a guardian from a child does not delete the person; she may have three other children here. If she was the primary contact, whoever is left becomes it.
The well-child visit
Four things a pediatric visit does that an adult one does not, all in the same section of the file.
Developmental milestones
A checklist by area — movement, hands and eyes, hearing and speech, social and play — with two ages on every row, and they are not the same:
- Most children do it by — what you tell a parent.
- Worth asking about after — the only age the system flags on.
Reading the first as if it were the second is how a checklist frightens the parents of a perfectly ordinary child, so both are printed on the row.
Mark each one Doing it, Not yet, or leave it unchecked. Marking "not yet" records what you found; it does not switch off the flag, because a finding is not a decision to stop watching.
A few milestones are marked Check now — the ones whose absence means look today rather than keep watching.
A premature baby is judged on the corrected age
This is the one list in the section read at the corrected age. A baby born at 30 weeks is not late to sit up at nine calendar months. Vaccinations and newborn checks deliberately do the opposite — those run on the calendar.
Vital signs
Heart rate, breathing rate, temperature, oxygen saturation and blood pressure, each read against the normal range for that child's age: 130 beats a minute is unremarkable at six months and worth asking about at eight years.
- The range is written beside the reading, not just coloured —
130 (90–150). - Nothing is refused. A reading outside every band is stored and then flagged; only a slipped decimal point (a temperature of 375) is called out as a likely typo.
- Blood pressure needs a height. It is read against age, sex and how tall the child is for their age, so without a recent height it is recorded and the missing fact is named rather than banded against a guess. No blood-pressure ranges are shipped — add the ones your clinic trusts under Settings.
- Click any vital to see it over time with its range drawn behind.
Newborn checks and jaundice
For the first weeks: the heel prick, hearing, the red reflex, hips, the jaundice follow-up, each with the window it is done in. Windows run from the birth itself — a heel prick is due 48 hours after this baby was born, whatever gestation they were born at.
Where the birth time is on file the windows are good to the hour; where it is not, the panel says so rather than implying precision it does not have.
Record each as Done with a result (normal, abnormal, or not back yet) or Family declined with a reason. An abnormal or still-pending result keeps the block open past every window — an unresolved result does not stop mattering when the window closes.
Bilirubin readings are a series, plotted against the baby's age in hours: 36 hours and 60 hours are a different picture, and a chart by day would flatten them into one point.
Newborn summary prints the birth, the checks and the jaundice readings on your clinic's own sheet — the page a mother hands over if the baby is admitted.
Working out a dose
Weight × mg/kg, the daily total, and the millilitres of the syrup your clinic stocks.
There is no button to press. Pick the drug and the figures appear; type a different weight and they follow it. Nothing is written to the record either way, so there is nothing to submit — the work happens on the server only because the ceilings and the refusals live there. A weight is left a moment before it is asked, so typing 12.5 asks once, and if the connection drops you get a line saying so and a way to retry, never a stale figure.
| It says | Because |
|---|---|
| The weight it used, and the day it was taken | A dose from a four-month-old weight is not wrong, but you have to know that is what it is |
| The maximum was reached | A 40 kg child at 15 mg/kg is 600 mg and the ceiling is 500. A figure that silently showed 500 would read as different arithmetic |
| A reason instead of a number | Below the minimum age, no weight on file, no mg/kg set, no daily frequency set — each is its own sentence, never a blank box |
A calculation, not a prescription
Nothing here is saved to the child's record. The Copy for the note button puts the figures on your clipboard for the visit note — what was actually prescribed is what you write there.
Not a children's tool. The same calculator sits under the Dose field on the prescription form (see Prescriptions) — mg/kg is how an adult antibiotic is dosed too — and it keeps working with the pediatrics plugin switched off.
The numbers come from your own drug list. Open a drug under Prescriptions → Drugs, and the Dosing by weight section on its form is where the mg/kg range, the doses per day, the ceilings, the minimum age and weight, and the syrup's strength are entered. A drug with no range is simply not offered by the calculator.
So the calculator starts empty, and says so. A clinic with a thousand drugs and no ranges entered yet opens the dialog to a sentence explaining why the list is empty and a button straight to the drug list — the dropdown is disabled rather than opening onto nothing. Whoever may not edit drugs is told to ask the person who can.
The dialog says where its list comes from every time, not only when it is empty. One drug in the dropdown raises the same question as none — "is this really all we have?" — so the note is always there: how many drugs carry a range so far, how many are set up but switched off, and a link to the drug list. Only the tone changes; nothing to work with is a warning, a short list is a plain line.
A drug that is switched off is not offered, whatever its numbers. That is the one empty list that looks like a fault: the range is entered, and the drug is inactive in the drug list, so the calculator skips it. Both screens now say it — the dialog counts how many drugs are set up but switched off, and the drug's own form warns you while you are filling the numbers in. Switch the drug back on to use it.
There is no second list of medicines to keep: the drug the calculator doses is the same row a prescription points at, so renaming or deactivating it happens once.
| On the drug's form | What it does |
|---|---|
| mg/kg from — to | The range. Fill only "from" for a single figure |
| Times a day | Required as soon as a range is entered — the daily total cannot be worked out without it |
| Max single dose / Max daily | The ceilings. Reaching one is always said out loud |
| Minimum age / minimum weight | Below either, the calculator refuses and says which |
| Strength (mg) / per (ml) | A syrup written 250 mg / 5 ml is 250 and 5. Leave both empty for tablets, and the answer stops at milligrams |
Dosing by weight is not only for children — it is how many adult drugs are dosed too — so the section is on every drug's form whether or not the pediatrics plugin is on.
Clinical content
These figures are what a dose is worked out from. A slipped decimal is a wrong dose, so they are entered by your clinic and are never shipped with the system.
Vaccinations
The card every parent asks about, derived rather than typed: your clinic's schedule against this child's date of birth, with what has been given written on it.
Doses are grouped by the age they are due at — "at birth", "2 months", "18 months" — the way the paper card in every mother's handbag reads.
| The card says | It means |
|---|---|
| Upcoming | Not due yet |
| Due | Due today or already, still inside the grace window |
| Overdue | Past the grace window, with the days late |
| Given | Recorded, with the date, the batch and who wrote it down |
| Skipped | Deliberately not given, with the reason |
The strip at the top of the section says what is due or late before you open anything.
Recording a dose
Date given, batch number, brand and site — only the date is required. Two cases the card is built around:
- Given elsewhere. A dose given at a government unit or another clinic is recorded with its own date and flagged; the child stops being chased for it.
- Off the schedule. A vaccine your schedule has never heard of — a travel vaccine, one given abroad — is recorded by name.
Skipping is a decision, not an absence. A dose skipped with a reason (an allergy, a refusal, a doctor's call) stops counting as overdue, stays on the card, and keeps the reason where the next doctor will read it.
Recording a dose is what takes a child off the overdue list and stops a reminder about it. Nothing else has to happen.
Printing the card
Print on the card produces the sheet a parent keeps: every dose by age, dates, batch numbers, and the state in words — on your clinic's own printed template, and legible in black and white. Design it under Settings → Print templates → Vaccination card.
The card you hand a parent
Share a patient's link and a parent opens a read-only page: the child's name and age, the next vaccine in plain words, what has been given, the weight line, and the birth date and weight. Nothing else.
It carries no percentile, no band and no interpretation — a parent reading a percentile with nobody to ask is exactly what this page is designed not to do. It has nothing to fill in, runs no scripts, and prints from any phone.
Anyone holding the link can open it
The link is the only lock. Once you send it, whoever it is forwarded to can open the card — there is no login and no expiry.
- To close one family's link: regenerate that patient's share link. The old address stops working immediately.
- To close every link at once: Settings → Patients → Patient file tabs → The parent's card, and switch it off.
The pediatric dashboard
/pediatric-dashboard — the clinic's children as seven questions and one month.
The month, first. Children on file, new children, visits, doses given and measurements taken — this month, for whoever the filter is set to. A screen that only ever shows problems is a screen people stop opening, and "did we plot anybody's growth this month" is a question worth an answer.
Then the seven questions. Each is a card carrying the count, a sentence saying what the count means, and the first three children behind it — so three overdue families can be rung without opening anything. The cards are ordered for you: what is urgent first, then how many, and the ones reading zero last. Each card opens its own list, and each list exports as a call sheet:
| Panel | Who is on it |
|---|---|
| Overdue vaccinations | The same children as the overdue list, counted the same way |
| Due in two weeks | Ring them before they are late — the reason the schedule is in the system at all |
| Newborns with checks outstanding | Babies of this month with a window open and nothing recorded |
| Development worth a look | Past the concern age of a red-flag milestone, unmarked |
| Growth outside the normal range | The latest measurement is under the 3rd or over the 97th percentile — weight, height, BMI or head circumference |
| Growth that has dropped a band | The latest weight is a percentile band below the one before |
| Not seen in a while | No visit in the months you set, and still of an age to be seen |
The two growth panels answer different questions, and a child may be on one, both or neither. Outside the normal range is about where the child is today and needs one measurement; dropped a band is about a trend and needs two. A child under the 3rd percentile since birth never crosses anything, so only the first panel ever sees them — which is the child a doctor most wants on a list.
Both read the WHO curves against the child's chronological age, deliberately: a preterm baby's corrected age belongs to the milestones, and a clinic-wide list has to mean the same thing for every child on it. A child with no sex recorded is on neither panel — the curves are published per sex, so there is nothing to read the measurement against; the child's own growth tab says so.
Below them, the clinic by age band, as bars with each band's share — and a separate count of children with no date of birth, because those children are invisible to every other figure here and the honest thing is to show you how many there are.
The badge beside Needs attention counts findings, not children: a child who is both overdue and not seen in a while is on two cards, so the total is what is open rather than a headcount.
A panel whose list you have not set up is not shown at all: a confident zero would read as "everybody is up to date" when it means "this was never configured".
Adults never appear on any of it, even in a clinic that sees both.
The export carries the child, the guardian and the phone number out as a CSV — a call list for the desk, and a file with families' phone numbers in it, so treat it as one.
No date of birth
Doses are still listed and can still be recorded by their date; only the due dates are unknowable, and the card says so rather than leaving them blank.
The schedule itself, the clinic-wide overdue list and reminders are on their own page: Vaccination Schedule.
Growth and the percentile curves
Weight, height, head circumference and BMI over time, with the child's own line drawn on top of the WHO reference curves — the 3rd, 15th, 50th, 85th and 97th percentiles. The birth measurements are the first point, so a child's line starts on the day they were born.
Each reading is also written out in words and numbers:
| What you see | What it means |
|---|---|
| P 42 | This child sits at the 42nd percentile: 42 children in 100 of the same age and sex weigh less |
| Between the 15th and 85th | The band, in words — a chart is read by the band, not the decimal |
| Outside the reference range | The reading is beyond five standard deviations. Usually a typo; the system refuses to print a percentile for it |
A reading, not a diagnosis
A percentile says where a child sits against children the same age and sex. It does not say whether that is a problem. A healthy child on the 5th percentile who has always been on the 5th percentile is a healthy child. What matters is the line, not the point.
A drop is flagged. When the latest measurement has crossed down into a lower band, a line under the chart says so — from which percentile to which. It is a prompt to look, nothing more.
What the curves need
Percentiles are computed from the child's age and sex, so both must be on the patient record. Where one is missing the chart still draws the child's own measurements and says which fact is missing rather than leaving a blank column.
Two references stop before the chart does, and the system says so instead of guessing:
- Head circumference — published to 5 years only
- Weight-for-age — published to 10 years only (past the growth spurt it cannot tell height from body mass)
- Height and BMI — to 19 years
Corrected age for a premature baby
A baby born at 30 weeks arrived ten weeks early. At four months old on the calendar, they have been growing for two — and plotting them as a four-month-old puts a perfectly healthy child below the 3rd percentile.
So the system corrects the age before reading the curve, whenever all of these are true:
- The birth record says under 37 weeks
- A gestational age was actually recorded — nothing is guessed
- The child is still inside the clinic's cutoff (24 months unless you change it)
- Correction has not been switched off for this child
Where correction is in force, the chart says so under it, and each corrected row in the table is marked. Where it is not, the reason is given: born at term, no gestational age recorded, past the cutoff.
Stopping it for one child. A preterm child who has caught up can be read normally from then on — the button under the chart. Nothing is recalculated and stored: the whole history re-reads at once, and you can switch it back.
Changing the cutoff for the clinic. Settings → Patients → Patient file tabs → Corrected age. Choose never, 12, 18, 24 or 36 months. Every preterm child's chart re-reads immediately.
Printing the growth report
The Growth report button above the chart prints the curves, the table of every visit with its percentiles, the reference the chart was drawn against, and the corrected-age line where one applies — on your clinic's own printed sheet.
Like every other printout, the design is yours: Settings → Print templates → Growth report. The sheet we ship carries a line saying the readings are not a diagnosis; leave it on for anything a parent takes home.
No date of birth
Everything in this section that reads as an age needs one. A child with no date of birth on their record still gets the birth record, the feeding timeline and the family — with a line at the top saying the date of birth is missing and where to add it. Nothing is guessed from another date.
Who can do what
| Action | Needs |
|---|---|
| Reading the section | Permission to see the medical file |
| Birth record, feeding, foods | Permission to edit medical records |
| Guardians | Permission to edit patients |
| Switching the plugin on or off | Settings permission |
Switching Pediatrics off hides the section. It deletes nothing — birth records, guardians, feeding entries and every growth measurement are exactly where you left them when you switch it back on. See Plugins.