DEV Community

Base Layouts
Base Layouts

Posted on

Tagging 1,000+ Clash of Clans base layouts: the tiny taxonomy that made search work

When I started building a free iOS library of Clash of Clans base layouts, I assumed search would be the hard part. It turned out the hard part was deciding what a "base" even is in data terms.

The three fields that mattered

  • Town Hall level – the single filter every player uses first. Stored as an integer, never as a string like "TH16", so ranges (14–16) are trivial.
  • Purpose – war, farm, trophy, or hybrid. Players think in goals, not in building positions.
  • Source link – the in-game copy link. Everything else is metadata; this is the payload.

What I dropped

I tried tagging "anti-2-star", "anti-3-star", "ring base", "island base"… and nobody used those filters. They were opinions, not facts, and two people tagged the same base differently. I kept them as free-text notes instead.

What I learned

  1. Model the decision the user makes, not the object. Players decide "I need a TH16 farm base", so that's the index.
  2. Keep opinionated labels out of filters. They erode trust when they're wrong.
  3. Validate the payload. A dead copy link is worse than no entry, so links get re-checked before they ship.

Disclosure: this is my own app, Base Layouts: War & Farm Maps (free, iOS). If you play Clash, you can try it here: https://apps.apple.com/app/apple-store/id6804564319?pt=2720803&ct=devto2&mt=8

Happy to answer questions about the data model in the comments.

Top comments (0)