Track your baby's "Wonder Weeks" based on their due date.
*Note: Leap calculations are based on the due date (adjusted age), not the birth date, because brain development begins at conception.
Upcoming Developmental Milestones:
Understanding Your Baby's Mental Leaps
Every parent notices periods where their baby becomes suddenly "fussy, clingy, and cranky." These phases are often actually "Mental Leaps"—predictable developmental milestones where a baby's brain undergoes a massive shift in how it perceives the world.
The Science of "The Wonder Weeks"
The concept of mental leaps was popularized by the research in "The Wonder Weeks." It suggests that babies go through 10 major mental leaps in their first 20 months. Because these leaps are tied to brain physical growth which begins at conception, calculations must be made using the estimated due date rather than the actual birth date.
Example Calculation
If your baby's due date was July 1st, but they were born early on June 15th, you would still use July 1st for the calculation. At 8 weeks from July 1st, your baby would likely be entering Leap 2: The World of Patterns, showing increased interest in shapes and the way things feel.
Leap Number
Week Occurring
Focus Area
Leap 1
5 Weeks
Sensations
Leap 2
8 Weeks
Patterns
Leap 3
12 Weeks
Smooth Transitions
Leap 4
19 Weeks
Events
Leap 5
26 Weeks
Relationships
The Three C's: Crying, Clinging, Cranking
During a leap, you may notice your baby is more difficult to soothe. This is because their new perception of the world is overwhelming. Once the leap is mastered, they usually enter a "sunny period" where they demonstrate new skills and a much happier temperament.
function calculateLeaps() {
var dueDateInput = document.getElementById("dueDate").value;
var resultDiv = document.getElementById("leapResult");
if (!dueDateInput) {
alert("Please select a due date.");
return;
}
var dueDate = new Date(dueDateInput);
var today = new Date();
// Calculate difference in milliseconds
var diffTime = today – dueDate;
// Convert to weeks
var diffWeeks = diffTime / (1000 * 60 * 60 * 24 * 7);
var roundedWeeks = Math.floor(diffWeeks);
var decimalWeeks = diffWeeks.toFixed(1);
if (diffWeeks < -2) {
document.getElementById("currentAgeHeader").innerText = "Baby is not born yet!";
document.getElementById("leapStatus").innerText = "Anticipating arrival…";
document.getElementById("leapDescription").innerText = "Calculations will begin once your baby reaches their developmental milestones post-due date.";
resultDiv.style.display = "block";
return;
}
document.getElementById("currentAgeHeader").innerText = "Current Adjusted Age: " + decimalWeeks + " Weeks";
var leaps = [
{ start: 4.5, end: 5.5, name: "Leap 1: Sensations", desc: "Your baby is starting to process internal sensations and metabolic changes. They may stare at objects longer and be more alert." },
{ start: 7.5, end: 9.5, name: "Leap 2: Patterns", desc: "The world of patterns. Your baby notices shapes, the way light hits a wall, and discovers their own hands and feet." },
{ start: 11.5, end: 12.5, name: "Leap 3: Smooth Transitions", desc: "Movement becomes less jerky. They are learning to perceive how things change smoothly, like a voice rising or eyes following a moving object." },
{ start: 14.5, end: 19.5, name: "Leap 4: Events", desc: "This is a long one! They start to understand short sequences of events (e.g., reaching for a toy, grasping it, and putting it in their mouth)." },
{ start: 22.5, end: 26.5, name: "Leap 5: Relationships", desc: "Understanding the distance between things. This often triggers 'separation anxiety' as they realize you can walk away." },
{ start: 33.5, end: 37.5, name: "Leap 6: Categories", desc: "The baby starts to group things. They realize a dog is different from a horse, even if both have four legs." },
{ start: 41.5, end: 46.5, name: "Leap 7: Sequences", desc: "Understanding the order of things. For example, knowing that to eat, you must pick up a spoon, dip it in food, and put it in your mouth." },
{ start: 50.5, end: 54.5, name: "Leap 8: Programs", desc: "The realization that a sequence can have different outcomes. They begin to understand 'if-then' logic." },
{ start: 59.5, end: 64.5, name: "Leap 9: Principles", desc: "Learning about rules, norms, and values. They start to experiment with 'being naughty' or testing boundaries." },
{ start: 70.5, end: 75.5, name: "Leap 10: Systems", desc: "The final leap in this cycle. They understand they can choose how they want to be: helpful, careful, or messy. Developing a sense of 'self'." }
];
var currentLeap = null;
var nextLeap = null;
for (var i = 0; i = leaps[i].start && diffWeeks <= leaps[i].end) {
currentLeap = leaps[i];
}
if (diffWeeks < leaps[i].start && nextLeap === null) {
nextLeap = leaps[i];
}
}
var statusEl = document.getElementById("leapStatus");
var descEl = document.getElementById("leapDescription");
if (currentLeap) {
statusEl.innerHTML = "⚠️ Your baby is currently in " + currentLeap.name + "";
descEl.innerText = currentLeap.desc;
} else {
statusEl.innerHTML = "✅ Your baby is currently in a Sunny Period";
descEl.innerText = "Enjoy the calm! Your baby is likely mastering the skills learned in their last leap and is generally more content.";
}
// List upcoming leaps
var upcomingHtml = "
";
var foundUpcoming = false;
for (var j = 0; j diffWeeks) {
var leapDate = new Date(dueDate);
leapDate.setDate(leapDate.getDate() + (leaps[j].start * 7));
upcomingHtml += "