Inspiration

A neighborhood business owner makes dozens of decisions without the audience-research resources available to a large company: What music should play in the store? Which nearby organizations might be good partners? What kinds of posts might resonate with the community?

Those decisions are often based on intuition alone. I built Blockwise to explore whether cultural taste data could give independent businesses a more informed starting point—one grounded in the area around their actual address.

What Blockwise does

Blockwise turns Qloo's location-based taste signals into a practical playbook for a local business.

An owner enters a street address, business type, and optional demographic signals. Blockwise verifies the address, examines the neighborhood's taste profile, and looks for relevant artists, brands, places, podcasts, and television shows. It then presents:

  • A suggested playlist
  • Brands and business ideas to investigate
  • Potential nearby partners
  • Media channels worth exploring
  • A four-week content calendar in English and Spanish

A live trace shows the searches and decisions behind the playbook. Owners can copy the results or save them as a PDF through their browser.

How the agent works

Blockwise uses a bounded, rule-based agent that operates with a Qloo API key. It does not require an LLM for the live demo.

The agent first selects the kinds of entities to investigate based on the business type. It then examines the returned taste profile and uses compatible observed tags to guide subsequent recommendation queries. When a tag-guided search returns no results, it retries without that tag while retaining the location and selected demographics.

The agent also responds to sparse geographic coverage. If Qloo returns no nearby places, it expands the search from 4 km to 10 km and then 25 km. If the wider searches remain empty, the playbook reports the limitation rather than inventing partners.

The final recommendations and captions are assembled with templates. This makes the decision process inspectable, while leaving the owner responsible for reviewing and validating the suggestions.

How Qloo powers the project

Qloo is the source of the cultural signals that make Blockwise location-specific:

  • Taste analysis: /v2/insights with filter.type=urn:tag identifies taste tags associated with the selected location and optional demographics.
  • Entity recommendations: Insights queries retrieve artists, brands, places, podcasts, and shows. Compatible tags from the taste profile can guide later searches.
  • Neighborhood comparison: Blockwise compares shared tags returned by separate neighborhood and city taste queries. The comparison is calculated in the application.
  • Business identity: Qloo place search can identify the business, but Blockwise attaches a result only when its name, address, and coordinates agree with the verified address.

A generic language model could suggest a plausible playlist or marketing idea, but it would have to guess at the cultural signals associated with a particular location. Qloo supplies the data used to guide Blockwise's searches.

How I built it

I built the application with Next.js, React, TypeScript, and Tailwind CSS, and deployed it on Vercel. The server handles API requests and streams progress to the interface. Esri World Geocoding verifies the entered street address; Qloo provides the taste and recommendation data.

The interface organizes the results into a playbook rather than a chat transcript, so an owner can scan the evidence and take away ideas to explore.

Challenges and what I learned

Location accuracy is foundational

A fuzzy business search can return a plausible but unrelated result. During testing, a search for one example business returned a restaurant in a different location. Using that result would have produced a confident-looking playbook for the wrong neighborhood.

I changed the flow to verify the street address first and use its coordinates for analysis. A Qloo business record is attached only when the identity and location agree.

Sparse data requires an honest fallback

A small-town example returned no nearby places in the initial search. Expanding the radius can uncover useful candidates, but distant results should not be presented as immediate neighbors. I bounded the search and made the radius and missing coverage visible.

An affinity is not a customer

Qloo affinities are modeled signals. They do not establish that a business's actual customers listen to an artist, buy a brand, or will respond to a campaign. The playbook therefore treats recommendations as hypotheses for an owner to investigate, not as verified demand.

What's next

I want to test Blockwise with more business owners and locations, improve the business-specific recommendations and bilingual copy, and evaluate which suggestions owners find useful in practice. A future version could also explore an LLM-powered agent, with safeguards that keep its recommendations traceable to the retrieved evidence.

Built With

Share this project:

Updates

Submission history