Building Parent Co-Pilot: A Tiny-Model Parenting Support Tool
/ Article
I built Parent Co-Pilot for the Hugging Face Build Small Hackathon, in the Backyard AI track. The challenge was simple: build something useful with small models. I ended up with a parenting support tool that answers one question parents actually ask: what do I do for the next messy stretch?
Not another list of activities. Not generic advice. A situation-aware plan that accounts for sick kids, exhausted parents, bad weather, solo parenting, and the thousand other constraints that make ordinary parenting tools useless at the exact moment you need them.
The Hackathon and the Constraint
The Backyard AI track was built around the idea that AI does not have to be cloud-heavy or API-dependent to be useful. Small models, edge-friendly models, runnable-on-a-Space models. That constraint forced every design decision.
I started with a broad idea: an AI parenting assistant. By the end of day one, I had reframed it. Parents do not need an assistant that recommends activities. They need a co-pilot that helps them get through a defined period of time under real constraints.
The Problem in Plain Language
Here are situations every parent recognizes:
- You have a meeting in 45 minutes and the child is bouncing off the walls.
- Your spouse is traveling for a week and you are solo-parenting everything.
- Your child is home sick and so are you.
- It is 105 degrees outside and you live in an apartment.
- School is unexpectedly closed and you still have deadlines.
Current tools give you activities. A list of crafts, apps, or outings. But activities are inputs, not outcomes. The goal is not find an activity. The goal is get through the next two hours with the energy, space, and people you actually have.
Parent Co-Pilot was designed around that goal.
Core Product Shaping
One of my favorite parts of this project had nothing to do with code, it was product refinement. Over the course of the hackathon I removed or changed several ideas that seemed good initially but ultimately made the experience worse.
I settled on a clear output structure:
- Situation Assessment: what is the primary goal, the primary constraint, and any secondary constraints.
- Recommended Plan: a timeline-based plan for the selected window.
- Alternative Plan: a different set of tradeoffs.
- Emergency Fallback: a rapid backup for when the plan falls apart.
- Tradeoffs: parent effort, interruption risk, and cleanup burden for each option.
The inputs are minimal because parents do not have bandwidth for long forms:
- Household structure and children
- Environment and budget preference
- Time horizon
- Current situation
- Parent energy level
- Optional notes
That is it. The model does the reasoning.
The Model Journey
Since this project was built for the Backyard AI track, everything needed to run locally using a small language model. That introduced an interesting challenge. Smaller models have much tighter limits on reasoning, context, and structured output. Prompt design became significantly more important than simply throwing more tokens at the problem. I started with MiniCPM, then tried Qwen2.5-0.5B-Instruct. Both worked but had tradeoffs around speed, reliability, and JSON validity. I ended up on HuggingFaceTB/SmolLM2-135M-Instruct, a 135-million-parameter model.
That sounds tiny because it is. The insight was that the planning logic lives in the prompt and the data layer, not in the model's parametric knowledge. SmolLM2-135M is fast, cheap, and produces valid structured output once the prompt is tight and the generation budget is set correctly.
The final Space runs SmolLM2-135M. You can try it live on Hugging Face Spaces.
Constraint-Aware Planning
The prompt engineering was where the project got interesting. I added explicit rules for real-world constraints:
- Sickness: plans emphasize rest, hydration, low stimulation, and low parent effort.
- Weather and space: no outdoor activities when the user marks too hot, rainy, or apartment / no outdoor space.
- Cleanup: messy or tactile activities are suppressed when the child dislikes dirty hands or messy play.
- Screen time: demoted from the default recommendation. It is still an option in the fallback, but not the first answer.
- Energy: exhausted parents get lower-effort, higher-sustainability plans.
I also fixed timeline generation so that 30-minute, 1-hour, 2-hour, afternoon, and today plans actually end at the right time. I removed Weekend and Multiple days early because the app is strongest when it is immediate.
The Demo Scenario
For the demo, I used the scenario many parents know too well: both parent and child are sick, and they still need to get through the next couple of hours.
Inputs:
- Two-parent household, one child age five
- Apartment, free budget
- Preference: Needs comfort, low stimulation
- Time horizon: 2 hours
- Situation: Both sick
- Notes: Parent has a fever and child is coughing
- Parent energy: Exhausted
The output is not a list of activities. It is a structured plan that respects fever, coughing, low energy, and limited space. A recommended timeline, an alternative, and an emergency fallback for the moment the child refuses the first plan.
That is the difference between an activity app and a situation planner.
If you want to try the scenario yourself, the live demo is on Hugging Face Spaces.
Custom UI for the Off Brand Badge
I wanted to move beyond stock Gradio for the Off Brand category. The final interface uses a softer visual system: pastel panels, cards, tradeoff chips, and a one-column intake flow that works on mobile.
The flow is simple:
- Your Family & Preferences
- Session Planner
- Results
What Actually Shipped
The current version includes:
- Household profile with local browser storage
- Session planner with time horizon, situation, energy, and notes
- Constraint-aware plan generation
- Recommended, alternative, and emergency fallback plans
- Per-plan tradeoff metrics
- Custom Gradio UI
- SmolLM2-135M-Instruct model support
- Deterministic fallback ranked by user fit
Each recommendation also includes practical tradeoffs like:
- Parent effort.
- Interruption risk.
- Cleanup burden.
The goal isn’t to find the perfect answer, it’s to help a tired parent make one less decision.
Lessons Learned
Three things stood out:
-
Tiny models work when the prompt owns the reasoning. I did not need a 70B model. I needed a clear planning framework, good constraints, and a data layer that grounded the output.
-
Constraints are more useful than open-ended creativity. The more specific the rules about sickness, weather, and cleanup, the more useful the plans became. Parents trust specificity.
-
UI polish matters for hackathon demos. A custom interface signaled that this was a real product, not a notebook experiment. It also made the Off Brand badge believable.
What's Next
The hackathon version intentionally stays focused.
There are no accounts, calendar integrations, notifications, or external services.
But I can easily imagine Parent Co-Pilot evolving into something much larger.
Instead of helping with a single afternoon, it could eventually help families manage routines, school breaks, travel disruptions, illnesses, and other situations that create constant decision fatigue.