The app other parents keep asking me to build
Blog post #87
For months I have heard the same sentence from other parents: “Haven’t you built that app yet?” They mean one place that shows what you need to know about your kids’ school and their activities. I never planned to make money from it. I live in a small place called Hjärup, and the plan is to start there, with my own family, and see if it holds.
What changed since last log
- I started building it. It is a mobile-first web app. The first goal is small: the things I check every day for my kids, in one view instead of five.
- The sources are not friendly. School information lives in Vklass. Sports live in Sportadmin. Dance lessons and birthday parties live in neither. The parent is the integration layer, and that is the real problem.
What shipped
- A “Today” screen. One card per child: are they checked in at after-school care, and what is their scheduled time. Plus today’s school lunch.
- Pickup changes and messages to staff in two taps. The most common message I write is “Alma walks home at four and picks up Edwin on the way”. It is now a button, with a confirm step before anything is sent. While building it I sent real messages to the staff and changed a real pickup time in Vklass, so the app uses a request I have seen work.
- School lunch with no login. The municipality publishes the menu through a public service, so it works without anyone’s password.
- Sports from the invitation emails. Sportadmin sends one email per person and activity, and each has a personal answer page that opens without a login. My code reads that page and gets team, time, place, deadline and what I answered. Reading the mails themselves is the part I am still setting up.
- A look that matches my own palette. Calm colours, large touch targets, nothing that blinks.
What’s working
- The value is in the small things. Nothing here is hard on its own. But “log in, find the right page, find the right child, type the message” is five steps, done many times a month. Taking away the steps is the whole product.
- The information is already there, scattered. An announcement like “pyjama day tomorrow” sits in a feed. By the time you see it, it has already happened. An app that reads the feed and shows only what is current would have caught it. That is the next feature, and I have not built it yet.
- Public sources first. Lunch needed no login at all. That is the safest kind of integration, and I want as many of those as I can find.
What’s unclear or broken
- Answering an invitation in Sportadmin from my app. I can read the invitations. I have not yet seen how the answer is sent, because none of the invitations I looked at were still open. The new Sportadmin web only shows leader tools, so the parent features seem to live in the mobile app.
- Google only lets me read mail for seven days at a time. My app is in test mode, so I have to approve it again each week until it has a public page and a privacy policy.
- I have not talked to Vklass, and Sportadmin has not answered yet. I asked a contact about an official way and am waiting. I will talk to both before anyone outside my family uses this. I would rather ask than keep reading their pages.
- I do not know if my wife will use it. She is the first real test. If she does not use it after two weeks, I will ask her why before I build anything else.
Decisions made
- A web app, not a native one. No app stores, no review, and a link is enough to share it. I can wrap it later if it ever matters.
- Family first, then one to three friends, then a conversation with Vklass. In that order, and only if nobody blocks me.
- No passwords stored by default. Where a login is needed, I store a session, not the password. Anything that sends something to a school or a club needs a tap on “confirm”.
- The AI never logs in for me. Claude Code builds the login code. I am the one who runs it and approves it in my password manager. It is a rule I keep even when it would be faster to let it.
- Calm over clever. No streaks, no nagging notifications. A friend’s running app, Dagg, works that way, and it is the right feeling for something you open only when you need it.
Tooling & process
- Claude Code did most of the building, and a Chrome extension let it look at pages I was logged in to, read-only, while I clicked the things that changed anything.
- Reading what the pages themselves send was faster than guessing. That is how I found the lunch service and how the message form works.
- Tests on the parts that read other people’s pages, because those are the parts that break when someone changes a layout.
— Stefan