← Selected work Applied AI · App Store research

Keyword Path Explorer

A private ASO research system that combines live App Store data, persistent workflows, novelty memory, and bounded LLM analysis.

RoleSole developer
StatusWorking private tool
ImpactUp to 1 hour saved
Verification104+ automated tests
Keyword Path Explorer queue console showing active and pending research tasks with service health status
Challenge

Research without repeating the same paths.

App Store research produces large, noisy keyword lists and repeats work across sessions. I built Keyword Path Explorer to connect live data to a staged research pipeline, preserve what has already been explored, and save up to one hour per research cycle.

System

Four modes, one persistent workflow.

  1. SeedExpands a known keyword through autocomplete and competitor terms, scores each branch, and stores the graph in SQLite.
  2. HuntStarts from a niche direction and searches competitor keywords for opportunities not yet covered by the graph.
  3. CDHCombines Cast, Hunt, and LLM filtering into a competitive discovery cycle with ranked niche candidates.
  4. MarketTurns selected keywords, ratings, and reviews into a positioning package ready for human review.
Cast15–30 secper application or keyword
Discovery~5 minper application
Scan~5 minper application
Market5–10 minper package
Engineering decisions

Keep the model inside explicit boundaries.

Live data through MCP.

A custom App Store scraper and Astro provide current keyword, application, rating, and review data. Market metrics never come from the model.

Novelty Memory with decay.

Processed keywords are stored with timestamps and weights. Recently repeated terms enter quarantine, while older directions gradually become eligible again.

Persistent priority queue.

User-triggered Scan work runs before background Hunt work. FIFO ordering prevents long discovery cycles from blocking manual research.

LLM as one stage, not the system.

DeepSeek through OpenRouter clusters, filters, and evaluates noisy batches. Queue state, persistence, thresholds, cleanup, and API contracts remain deterministic.

Product evidence

From direction to reviewable output.

Discovery detail showing a niche hypothesis, market signal, and ranked keywords
Discovery. A niche hypothesis grounded in live popularity and difficulty metrics.
Competitive market scan showing entry points, review signals, and a competitor matrix
Competitive scan. Ratings and reviews expose entry points; unavailable conclusions remain explicitly unavailable.
Generated ASO package with positioning, name options, keyword strategy, and listing copy
Market package. Positioning, naming, keyword strategy, and listing copy prepared for human review.
Testing

Deterministic core, isolated integrations.

Vitest uses in-memory SQLite, so tests never touch the real novelty.db. Scoring and graph behavior remain deterministic; Fastify, Astro, and App Store boundaries are mocked where appropriate. Live LLM tests run separately when an API key is available.

18 novelty23 graph17 CDH13 hunt20 queue6 API5 mechanical2 MCP server
Current limits

What the evidence does not claim.

  • This is a single-user private tool, not an organization-wide deployment.
  • LLM output can be incomplete and requires human review.
  • Run time and result quality depend on external App Store, Astro, and model availability.
  • The screenshots use public App Store research data and do not imply affiliation with the applications or brands shown.
Technology

Stack

  • Node.js 22
  • TypeScript
  • Fastify
  • React
  • Vite
  • Tailwind CSS
  • SQLite
  • Vitest
  • OpenRouter
  • DeepSeek
  • MCP
  • JSON-RPC