03/07Design resources · Discovery · Web

Unikist

A hand-curated index of design resources where the home page is a search field, not a headline.

Role
Design, front-end
Type
Personal project · Web product
Status
Live · unikist.com
Year
2026
02/10

Why I made this

I didn’t want another gallery to scroll. I wanted somewhere to look something up.

The site’s own line for it is “the index, not the mall”: 696 resources, 18 categories, 0 ads.

A directory is only worth coming back to if it is faster than your own bookmarks. So the first screen is one line: type what you need.

Everything is filed by hand, and submissions are read before they join.

Recorded from the live site: type a word and the answers resolve under it
03/10

The problem

Resource sites are built for browsing. Nobody arrives wanting to browse.

A design hypothesis, not a research finding.

You arrive with a noun — an icon set, a font, a mockup — and you want the two or three good ones.

  1. Retrieval, not discovery

    The page should answer a word, not present a feed.

  2. Curation has to show

    One line on what it is, a price badge, and a short “why we like it”. Short enough to trust.

  3. Extras stay behind the index

    Learning paths, briefs, collections and a feed are there. None of them is the front door.

04/10

The shelves

Eighteen categories, filed by hand. Keep scrolling and they file themselves.

  • AI Tools
  • Vibe Coding
  • UI Kits
  • Templates
  • Components
  • Icons
  • Logos
  • Fonts
  • Illustrations
  • Mockups
  • Stock
  • Color
  • Backgrounds
  • 3D & Motion
  • Design Tools
  • Accessibility
  • UI Inspiration
  • Portfolios

Eighteen categories, checked by hand. Keep scrolling and they file themselves.

  • 01

    Counts on every shelf

    Fonts 62, Icons 59, Mockups 56 — down to Templates and Portfolios at 12. A number tells you whether a shelf is worth opening.

  • 02

    Filters live in the address

    Category, price, licence and sort are written into the URL, so a filtered view is something you can send.

  • 03

    Search this page

    The line at the top of this page is the same idea. It searches this portfolio.

05/10

The approach

It was redesigned three times in nine days before it found its tone.

  1. Resources only

    A light editorial system, a database and a command palette. Just the directory.

  2. Community

    Votes, accounts, profiles, a feed — and a warmer look to go with them.

  3. More shelves

    Collections, four new categories, learning paths, practice briefs, and a home page shaped like a gallery.

  4. The instrument

    The home page went monochrome and the gallery was replaced by a single input. That is the build that is live.

06/10

Search and structure

  1. 01

    The hero is an input

    No headline. A caret, “Type what you need —”, and six chips that fill it in for you.

    Why
    If search is the product, it should be the first thing you can touch.
    Unikist screen
  2. 02

    Results resolve in place

    The best twelve matches arrive under the field with the matched letters marked. Enter opens the first; Esc clears.

    Why
    A results page is a second decision. Most searches here are one word.
  3. 03

    Plain scoring, no AI

    A name that starts with your word beats one that contains it, which beats a tag, which beats the description.

    Why
    For a few hundred hand-filed entries, a ranking you can predict is better than a clever one you cannot.
    Effect
    It runs in the browser on every keystroke. There is nothing to wait for.
  4. 04

    Three doors, one search

    The hero, “/” for the field in the header, and ⌘K from anywhere. All three use the same scoring.

    Why
    Wherever your hands are, the same thing should happen.
    Unikist screen
  5. 05

    Chosen by hand, and it says so

    Editor’s picks show a letter in a tile, the category and the price. No logos competing for attention.

    Why
    A short list that someone chose is the whole reason to use an index instead of a search engine.
    Unikist screen
Unikist: Directory, feed, learning, briefs, collections
Directory, feed, learning, briefs, collections
Unikist: Guided learning paths
Guided learning paths
07/10

The visual system

On the home page, the index has no colour of its own.

  • Graphite#0A0A0B
  • Ink#121212
  • Silver#9A9AA0
  • Hairline#E8E8E4
  • Paper#FBFBF9

Typeface

Geist + Geist Mono

Geist for everything you read; Geist Mono for facts — counts, chips, labels.

paper
#FBFBF9
ink
#121212
dark
#0A0A0B
hairline
#E8E8E4
radius
0.75rem
ease
cubic-bezier(.22, 1, .36, 1)
  1. Monochrome up front

    On the home page an entry is a letter in a tile. In the directory, favicons and two price badges bring the colour back.

  2. Black hero, either theme

    Light is the default and there is a dark theme, but the search always sits on black.

  3. One easing

    Everything uses the same curve. Results stagger by 45ms; the theme changes with a 480ms circular wipe.

  4. Still when asked

    With reduced motion on, the hero is a plain gradient and the theme switches at once.

08/10

The build

Built with

  • Next.js 15App Router
  • React 19interface
  • Tailwindstyling
  • Supabaseaccounts and data
  • cmdkthe ⌘K palette
  • react-three-fiberthe light in the hero

A Next.js app with a database behind it, and a search that never leaves the browser.

  1. A code, not a password

    Sign-in is a code sent by email. Voting needs no account at all.

  2. The index is small on purpose

    The whole directory can be scored in the browser, which is what makes search feel instant.

  3. Borrowed light

    The beams behind the search field are the open-source Beams component from React Bits, not something I wrote.

09/10

The result

Live: 696 resources in 18 categories.

The directory is the finished part. The community side — feed, collections, learning paths — is built and still quiet.

unikist.com
10/10

What I learned

I kept adding shelves when the problem was the front door.

Community, learning, briefs, a gallery home: each one made the site bigger and the first screen weaker. The version that worked took the home page away and left a text field.