Skip to content
All work
2025Interface

Books Library

A front-end exercise in doing the small things properly: fetch a collection, then let someone actually find something in it.

Interface

Approach

Search, sort, and view mode are three independent pieces of state narrowing the same list, so they compose instead of fighting each other — changing the sort does not clear your search.

The grid/list toggle is a layout change rather than a second code path: both views render from the same list, and only the container's grid rules differ.