Skip to content

118 Boxes

My six-year-old could read the word magnesium. They had never heard it.

A periodic table for children who are reading ahead of their vocabulary. Every name is spoken aloud. Every element shows what the stuff actually looks like.

Download on the App Store

Free · iPhone and iPad · No ads, no tracking

Argon, drawn as a discharge tube
Argon, drawn as a discharge tube
Three rounds and the table
Three rounds and the table
All 118, by family
All 118, by family
One fact, and a button that says it
One fact, and a button that says it

The rounds

Three ways to know an element

Ten questions each, then a score and up to three stars. Anything they get wrong is listed at the end with its picture, so the mistakes are the last thing they see.

1

Read it

The symbol appears alone. Four names underneath. A picture of the sample sits below as a hint, and you can switch that off when it stops being needed.

2

Recognise it

Just the sample, no letters. The three wrong answers are chosen to look nothing like the right one, so it is a question rather than a coin toss.

3

Recall it

The name, and four symbols. The hardest of the three, because nothing on screen looks like the answer.

The artwork

Not one of these is a photograph

Every sample is drawn by the app, from three facts about the element: its colour, its state at room temperature, and the shape a real sample comes in.

Gold is a cast bar. Copper, a coil of wire. Mercury pools. The noble gases glow in discharge tubes, and anything radioactive pulses. Metals catch the light; everything else stays matte. The lumps are seeded from the atomic number, so an element always draws itself the same way.

It solves a dull problem elegantly. Photographs of 118 element samples are either unlicensed or unaffordable, which is why so many periodic table apps quietly show you nothing at all.

chunkingotpelletspowdercrystalwirepoolcloudtubeshard

The teaching

It keeps track of what they don't know

All 118 are in play from the first question. Nothing is locked, nothing is earned. The app simply asks more often about the elements they have not met, less often about the ones they have, and leans early on the first 36, where the familiar names live.

Three correct answers and an element counts as learned. That is the only progression there is.

118elements, all unlocked
10drawing styles
0lines of network code

The privacy

Nothing leaves the device, because nothing can

No accounts, no advertising, no in-app purchases, no analytics SDK, no third-party anything. The app contains no networking code at all, so there is no mechanism by which a child's use of it could travel anywhere.

Progress and settings live on the device and are deleted with the app. That is the entire privacy policy, and it is two paragraphs long for a reason.

The maker

Shipped the way I'd ask a team to ship

I'm Riz. I lead engineering teams for a living, which mostly means helping other people build things. 118 Boxes is something I built myself, start to finish, and I held it to the same bar I'd set at work.

One real user

It exists because of one child and one problem: reading words they had never heard. Spoken names and pictures came first. Everything else had to earn its place.

Nothing it doesn’t need

No third-party packages and no network code. The Xcode project is generated from a short spec file, and all 118 illustrations are drawn in code instead of licensed.

Private and accessible by default

Private because it can’t be anything else, not because a policy says so. Dynamic Type at every size, and VoiceOver descriptions written so they never give away the answer.

Eleven days to the App Store

First commit on 3 September, live on 14 September. Uploads to TestFlight are one script, and the source is public under MIT.

SwiftUI and SwiftData, no third-party dependencies. Written in Sydney, for one six-year-old, and then tidied up enough to share.