ChakraCHAKRA
ServicesCase StudiesDesign LabProcessPricingAbout
Free Scan
Let's Talk
ChakraCHAKRA

AI engineering & automation for growing businesses. Turning AI into measurable business outcomes.

Explore

  • Case Studies
  • Process
  • Pricing
  • Free Scan
  • About

Get Started

  • Book a Call
  • Contact
  • Newsletter
  • Search

Legal

  • Privacy Policy
  • Terms of Service
  • Payment & Refund

© 2026 Aashapura LLC. All rights reserved.

Privacy·Terms·Payment & Refund
← Back to case studies
codegamesEdTech / Kids Coding EducationLive (checkout wiring pending)Course catalog and storefront API — structured curriculum data with real keyword search over the catalog7 min read

AI Coding Academy for Kids: A Real Course Catalog with Live Search

AI Games Academy turns 'learn to code with AI' into a real, browsable course catalog aimed at kids. Eight courses are live, each carrying complete, structured curriculum data rather than marketing fluff: session count, age range, difficulty level, a set of highlights, tags, a description, and presentation details like an icon and gradient. The line-up spans the games kids already love — 'Minecraft AI Builder' ($249, 8 sessions, age 8+, beginner), 'Roblox AI Game Studio' ($349, 10 sessions, age 10+), and an intermediate 'AI Chatbot' course for age 12+ — priced between $249 and $349. The catalog API returns deterministic JSON ready to render as a storefront grid, and the search endpoint performs genuine keyword matching over the catalog: a query for 'roblox' returns exactly the one Roblox course, while a query for 'python' correctly returns zero results because no course matches — proof that the filter is real logic, not a pass-through that echoes whatever you send it. The one honest gap: checkout URLs are currently empty strings, so the content is production-real but the commerce path is not yet wired.

Sections

Key MetricsWalkthroughThe ChallengeWhy This Approach?Build ProcessChallenges & SolutionsHow AI Powers ThisResultsSystem OverviewTechnologies Used

Key Metrics

Catalog depth

Before

Landing-page promises with no structured curriculum

After

8 live courses, each with sessions, age range, difficulty, highlights, and tags — inspectable before purchase

Search behavior

Before

Decorative search that ignores the query

After

Real keyword matching — 'roblox' returns 1 course, 'python' returns 0 — verified genuine filtering

Pricing transparency

Before

N/A

After

Courses priced $249-$349 with the price exposed as structured catalog data

Commerce state

Before

Fake or dead checkout links

After

checkoutUrl left explicitly empty — honest 'content live, checkout pending' rather than a broken button

Watch the Walkthrough

A real screen-capture of the running system — no slides, no mockups.

The Challenge

The 'teach kids to code with AI' market is crowded with landing pages that promise courses but hide a thin reality: a hero image, a signup form, and no actual structured curriculum behind it. For a parent deciding where to spend $249-$349 and their child's time, that is a bad bet — they cannot see how many sessions a course runs, what age it targets, what difficulty it assumes, or what a child will actually build. And a storefront that lists courses but whose 'search' is decorative — returning the same results no matter what you type — erodes trust the moment a parent tests it. What is needed is a catalog where every course carries real, inspectable curriculum data and where search is genuine filtering logic that returns exactly what matches and nothing when nothing does.

Why This Approach?

Catalog data model

Structured per-course metadata — sessions, ageRange, difficulty, highlights[], tags[]

A parent's decision hinges on concrete facts: how many sessions, what age, what level, what the child builds. Modeling each course as structured fields (not prose) makes those facts inspectable, filterable, and renderable into a consistent storefront grid.

Alternatives considered: Free-text course descriptions, image-only cards, external CMS

Search implementation

Real substring/keyword matching over the catalog

A search that returns the same thing regardless of input is a trust liability. Implementing genuine matching — where 'roblox' returns exactly one course and 'python' returns zero — means the storefront behaves honestly under any query a parent tries.

Alternatives considered: Static featured list, client-side fuzzy match on a fixed array, decorative search box

Commerce wiring

Ship the real catalog now with checkout URLs left empty until commerce is connected

The content is production-real and worth exposing; the payment path is not yet built. Leaving checkoutUrl as an explicit empty string is the honest state — better than a link that leads nowhere and pretends to sell.

Alternatives considered: Fake checkout links, block launch until payments are live, redirect to a dead page

Build Process

1

Course catalog

Eight live courses served from GET /api/courses, each with full structured metadata: session count, age range, difficulty, highlights, tags, description, and presentation fields (icon, gradient, subtitle). The catalog spans the games kids gravitate to — Minecraft AI Builder, Roblox AI Game Studio, and an AI Chatbot course — priced $249-$349.

2

Real keyword search

GET /api/courses/search?q= performs genuine substring/keyword matching over the catalog. Verified: 'roblox' returns exactly the one Roblox course, and 'python' returns zero results with an empty courses array — the filter is real logic, not a pass-through echoing the query.

3

Storefront-ready delivery

Every response is deterministic JSON with a count and a fully-populated courses array, shaped to drive a storefront grid directly. A frontend renders each course as a card from the structured fields without any post-processing.

4

Honest commerce state

Checkout URLs are currently empty strings — the content and search are production-real, but the payment path is not yet wired. This is documented as the real state rather than masked with dead links, leaving a clear, small integration step before the catalog can transact.

Challenges & Solutions

Impact

Parents cannot see sessions, age fit, difficulty, or what a child will build — so a $249-$349 decision is made blind.

Solution

Every course modeled with structured curriculum data — sessions, ageRange, difficulty, highlights, tags — exposed via a clean catalog API.

Result

8 courses live with inspectable metadata (e.g., Minecraft AI Builder: $249, 8 sessions, age 8+, beginner) — real substance, not a landing page.

How AI Powers This

AI Capability

Structured Course Catalog

Browse 8 AI coding courses for kids with the facts that matter — sessions, age range, difficulty, and what your child will build — not just a title and a price

Business outcome

8 courses live ($249-$349) with full curriculum data — a parent can evaluate fit before buying

Under the hood

GET /api/courses -> deterministic JSON with count + courses[]; each course carries sessions, ageRange, difficulty, highlights[], tags[], description, and presentation fields

How success is measured: Metadata completeness per course, catalog render-readiness, price/age/difficulty accuracy

AI Capability

Genuine Catalog Search

Search actually works — type 'roblox' and get the Roblox course; type something not in the catalog and get an honest zero

Business outcome

Verified real filtering: 'roblox' -> 1 hit, 'python' -> 0 hits — not a decorative pass-through

Under the hood

GET /api/courses/search?q= runs real substring/keyword matching over the catalog and returns count + matching courses[]

How success is measured: Precision (correct hits), correct empty-set behavior on non-matches

AI Capability

Storefront-Ready JSON

The catalog drops straight into a shopping grid — every course renders as a card from clean, consistent data

Business outcome

A frontend renders the storefront directly from the API with no reshaping

Under the hood

deterministic JSON responses with a uniform course schema (icon, gradient, subtitle included) suitable for direct grid rendering

How success is measured: Response determinism, schema consistency across courses

Results & Metrics

Catalog depth

Improved

Before

Landing-page promises with no structured curriculum

After

8 live courses, each with sessions, age range, difficulty, highlights, and tags — inspectable before purchase

Search behavior

Improved

Before

Decorative search that ignores the query

After

Real keyword matching — 'roblox' returns 1 course, 'python' returns 0 — verified genuine filtering

Pricing transparency

Improved

Before

N/A

After

Courses priced $249-$349 with the price exposed as structured catalog data

Commerce state

Improved

Before

Fake or dead checkout links

After

checkoutUrl left explicitly empty — honest 'content live, checkout pending' rather than a broken button

System Overview

FrontendNext.js UIAPIRoutes + authDatabasePostgreSQLAIRAG + agentsExternalSaaS APIs

The architecture below is the technical foundation behind every business outcome on this page — built for reliability, low running cost, and the speed your customers feel.

A Rust catalog/storefront API serving 8 AI-for-kids coding courses. GET /api/courses returns deterministic JSON (count + courses[]) where each course carries structured curriculum data — session count, age range, difficulty, highlights[], tags[], description, and presentation fields (icon, gradient, subtitle). GET /api/courses/search?q= performs real substring/keyword matching over the catalog (verified: roblox -> 1, python -> 0). Responses are shaped for direct storefront-grid rendering. Commerce is not yet wired — checkoutUrl fields are empty strings, documented as the honest current state. No auth on the verified endpoints.

Technologies Used

Rust, JSON catalog API, real keyword search, structured course schema

RustJSON APICourse CatalogKeyword SearchJSON catalog APIreal keyword searchstructured course schemaRustJSON APICourse CatalogKeyword SearchJSON catalog APIreal keyword searchstructured course schema
Try the Live Demo
Back to Case Studies