HomeTiles

✦An AI agent + Qloo's taste graph

A talking picture board that sounds like home.

Every child deserves to say what they love. HomeTiles gives non-speaking children a talking picture board built from their own snacks, shows, places and family, by an AI agent using Qloo.

  • English, Hindi, Spanish
  • Child lock
  • Taps stay on the device
  • Parents approve changes
👆 Tap a picture. It talks in English.
Tap the pictures…
✨ Maybe next

Leo, 8, London · a fictional demo child

Why we made this

It started with our little cousin.

When she was little, our cousin used a picture board to talk. It had the everyday words, but not hers: her snacks, her cartoons, the names of her family. Adding them was tricky, so mostly they just weren't there.

She could tap. The board just didn't have her words.

So we built HomeTiles: a board that starts from the words in a child's own life, and adds them for the family in about a minute.

🍫Cadbury Buttons
📺Bluey
🛝Regent's Park
👵Grandma
हिंदी🍪Parle-G
🎮Minecraft
🧸Paddington
Español🎬Encanto
🎵Beatles songs
🐟Fish fingers
Español👵Abuela
🚌Big red bus
हिंदी🥟Golgappe
Español🌶️Takis

AI alone vs. AI + Qloo

Same child. Two very different boards.

An AI alone can only guess from a child's form. Scroll, and each guess becomes the real thing Qloo finds for Leo.

Leo, 8 · Camden, London

🧃juice
🧃Ribena
🌳park
🦁London Zoo
📺cartoon
🐶Pup Academy
🍦ice cream
🍦Cornetto
☕café
🥞Crêpes à la carte
🎵music
🎵Beatles songs

AI alone: generic guesses. Nothing here is his.

↓ Keep scrolling to swap in Qloo

  • In Hindi, for Aarav in Delhi:पारले-जीदादू
  • In Spanish, for Sofía in Los Angeles:TakisAbuela

See every screen

From a few questions to a board that talks

This is exactly what you'll see. Keep scrolling to move through each screen, or tap a step.

Step 1 of 7

Tell us about your child

First name, neighbourhood, language and 3–5 things they love. Each favourite is checked against Qloo as you type.

Built for how children learn

Two boards, one child

Core words like “I”, “want” and “stop” stay in the same place on both, so muscle memory works.

⭐

For me: the smart board

Learns on the device what the child says and when. After “I want” it shows their snacks and shows; in the evening, their cartoons. “Said before” repeats a whole sentence in one tap.

📁

All words: the classic board

Every word lives in a fixed folder: food, places, favourites, family, fun, “I need”. Nothing moves, which many therapists prefer while a child is learning.

Either board, safely in their hands. “Give to Leo” goes full-screen and hides every menu; the back button is blocked. Parents exit by holding the lock for 2 seconds.

Under the hood

How HomeTiles uses Qloo

Follow one board from a parent's form to a child's hand. Scroll, and each stage switches on.

  • Browser
  • Server · Vercel
  • Qloo taste graph
  • On the device
  1. 1 · Browser

    A parent answers 3 short steps

    Neighbourhood, language, age group, what the child is like, 3–5 favourites and family. Each favourite is checked against Qloo as they type.

    /createPOST /api/resolve/search

    Passes on: the profile · names never go to Qloo or the AI

  2. 2 · Server · Vercel

    One streaming request

    The browser opens one request and watches the build live: every agent step and every Qloo call stream back as they happen.

    POST /api/boardNDJSON stream4 builds / min / IP

    Passes on: favourite names + their types

  3. 3 · Qloo taste graph

    Favourites become Qloo IDs

    Each favourite is searched by type and name-checked, so “Paddington” means the film, not the station.

    /searchtv_show · movie · videogame · brand · artist

    Passes on: Qloo IDs + city + age band

  4. 4 · Server · Vercel

    A Gemini agent plans the research

    With function calling, Gemini decides which Qloo tools to run and in what order, inside a 60-second budget. Its brief has no names. Any tool it skips, a scripted planner runs.

    gemini-3.5-flashfunction callingfallback: 3.5 Flash-lite

    Passes on: tool calls

  5. 5 · Qloo taste graph

    Seven tools, each a real Qloo call

    Every call goes through one facade: cache, a trace of each request, at most 2 in flight, back-off on 429.

    • expand_personal_taste

      Shows, films, games and music that fans of their favourites love

      /v2/insights · signal.interests.entities

    • match_temperament

      Calm or energetic picks, from Qloo's descriptor tags

      /v2/insights · signal.interests.tags

    • find_local_brands

      Snacks popular where they live; the LLM proposes, Qloo verifies

      /v2/insights · urn:entity:brand + location

    • find_local_places

      Hottest taste cells near home, then real places inside them

      urn:heatmap → urn:entity:place

    • shared_with_family

      Tags a child and grandparent share, turned into things to enjoy together

      /v2/analysis/compare → /v2/insights

    • audience_profile

      Which age groups love each pick, so tiles fit the conversation

      urn:demographics

    • whats_rising

      Rising picks, so the child can join in at school

      /v2/trending · bias.trends

    hackathon.api.qloo.com

    Passes on: entities + affinity + why (explainability)

  6. 6 · Server · Vercel

    A safety screen for children

    Each result is checked against the child's age group: content ratings, a kids' genre for under-13s, ESRB for games, and no bars, energy drinks or coffee.

    ageSafe()filter.content_ratingfilter.exclude.tags

    Passes on: safe candidates

  7. 7 · Server · Vercel

    The board engine ranks and lays out

    score = 0.55 affinity + 0.25 local fit + 0.15 age fit + 0.05 popularity. Then folder quotas, fixed core-word slots, words in the family's language and ARASAAC pictograms.

    engine.ts8 foldersGemini labels, template fallbackARASAAC

    Passes on: the board, as JSON

  8. 8 · On the device

    The board lives on the device

    Board, taps and sentences stay in localStorage. “For me” predicts the next word on the phone itself: word pairs, time of day, the live topic. Nothing is sent.

    localStorageWeb Speech APIchild lock

    Passes on: weekly: Qloo IDs + tap counts only

  9. 9 · Server · Vercel

    Weekly refresh, the parent decides

    Only anonymous Qloo IDs and tap counts go up. The most-tapped picks seed new Qloo insights; the parent ticks each change. Core, safety, family and locked tiles never move.

    POST /api/refresh/v2/insights≤ 2 replace · ≤ 2 move

↺ And around again: each week the board grows with the child, and every tile keeps its Qloo evidence behind the purple ?.

“There's more to life than cookies.”

A mother, quoted by AAC researchers Light & McNaughton (2014)

Families give up on AAC when it doesn't fit their life and there's little support (Johnson 2006; Moorcroft 2020).

“Doesn't fit and doesn't work for us”: cultural and language mismatch came up in 8 of 11 parent studies (Gardiner 2025).

Users say humour helps people “see that I am a person”. HomeTiles adds jokes and banter about their favourites (CHI 2025).

Try it now

Build a board in about a minute

Watch the agent research a demo child live, in English, Hindi or Spanish. Or make one for your own child.

Make a board for your own childThree quick steps. Names never go to the AI or to Qloo; only favourites, the city and age do.

Demo children are fictional. HomeTiles supports speech-language therapists; it doesn't replace them.