Skip to content

Add category filter chips to the tool grid #138

Description

@varshinivarma16

Add a row of category filter chips above the tool grid on the homepage. Clicking a chip narrows the grid to that category; All resets it. Each chip shows its count, so the size of each group is visible at a glance.

We now have 43 tools in a single flat grid. Search (Cmd+K) helps when you know the tool's name, but there's no way to browse by type. Categories fix that.

Why

  • The grid is getting long — 43 cards with no grouping.
  • Search only helps if you already know what you're looking for.
  • Counts on each chip make the collection easier to understand.

Proposed categories (covers all 43 tools)

Category Count Examples
Format 5 JSON, SQL, XML formatters, Markdown & HTML preview
Convert 10 Base64, URL, YAML↔JSON, curl→fetch, timestamp
CSS 11 Grid, flexbox, gradient, clamp, box shadow, unit converter
Security 6 Hash, bcrypt, JWT, password tools
Generate 5 UUID, QR, cron, gitignore, lorem ipsum
Dev 6 API tester, OpenAPI viewer, regex, diff, HTTP status

Scope

  • Add a required category field to every entry in src/constants/tools.ts, plus an exported Category type and CATEGORIES list. Counts are derived from the array, not hardcoded.
  • New filter-chip component in src/ui/, built from the existing Button primitive so styling stays consistent.
  • Filter state held in src/components/ToolManager.tsx (the homepage island that renders the grid).
  • Sync the active category to a query param (/?category=css) so it's linkable and survives a refresh. Uses the browser URL API — no new dependencies.

Not included

No changes to any tool page, no card redesign, no new tools.

Image

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

No labels
No labels

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions