Overhead photo of three iPads on a kitchen table arranged in a row. Each open to a different educational app: MiaCademy (math lesson), ABCmouse (phonics game), LingoKids (Spanish song). iPads are color-coded with kid-friendly cases (purple, pink, orange). A laptop in the background partially visible showing a pfSense dashboard with green allowlist indicators. Warm morning light. Communicates 'kid-friendly + parent-controlled' without being clinical.

Summer break is here and I'm already kicking the ball off down the hill. Three kids on the Summer Learning program at home β€” 8, 6, and 4 β€” each with an iPad. Each iPad has one job: 2 hours of structured learning a day. Their choice when, but it locks down at bedtime.

Here's the stack we set up and how I made it stick.

πŸ§’ The kids + their apps β€’ 8yo β†’ MiaCademy. Full K-12 curriculum, ~$15/mo, no ads, daily lessons unlock on a streak β€’ 6yo β†’ ABCmouse + LingoKids. Phonics, basic math, second-language exposure β€’ 4yo β†’ same: ABCmouse + LingoKids. ~10 days in and counting to 20 unprompted

The iPad itself will only open those apps. Nothing else.

πŸ”’ The infrastructure Each iPad has an Apple Configuration Profile that: β€’ Locks the device to a separate WiFi (DizyDiz_Kids) β€’ Forces SafeSearch on Google, disables iCloud Private Relay + DNS-over-HTTPS β€’ Installs my CA so the firewall can see hostnames β€’ Device only works on the kids' wifi β€” no sneaking iPads out, they're learning tools, not toys

That WiFi is on its own VLAN (KIDS, 10.7.21.0/24) on home pfSense. The DNS server for that VLAN: 1) Blocks ~683,000 ad/tracker/malware/adult/VPN domains by default 2) Allowlists ONLY the edu app hostnames β€” MiaCademy, ABCmouse, LingoKids 3) Rewrites google.com + youtube.com to force SafeSearch + YouTube Restricted

⏰ Bedtime At 8 PM the entire VLAN's internet drops via a pfSense schedule. Even if they sneak the iPad under the pillow β€” without internet, none of the apps work past cached lessons.

πŸ“Š Accountability Every Saturday at 6 PM the firewall renders a per-iPad weekly report (top hostnames, blocked queries, daily totals) to a private URL only April and I have. If a kid's device hits a blocked category like "vpn", Discord pings me in real time. Already a handful of "interesting" queries flagged in week one β€” defense in depth pays off.

πŸ˜€ Result so far Three weeks in, the 8yo asks for the iPad in the morning because MiaCademy unlocks a new lesson daily. The 6yo loves the LingoKids songs. The 4yo is now the household's resident counting champion.

Two hours a day of brain-on, with the rest of the distraction surface just… not there. No daily yelling match about "one more video."

Full pfSense config (allowlist, DNSBL, bedtime schedule, weekly-report cron) + the Apple Configuration Profile build script on the blog πŸ‘‡

#ParentingTech #SummerLearning #pfSense #FamilyTech #ScreenTime

β€” Continue reading at https://dizydiz.com/blog/kids-ipads-summer-learning.html