A catalogue that filters, sorts and remembers

The page stops being a page. Everything on screen is rendered from one array, the filter and the sort are derived from state rather than stored beside it, the form refuses bad input properly, the query lives in the URL, and every one of the four states a request can be in is handled. No framework — this is the part a framework replaces, written once so you know what it does.

05Steps
≈ 70Minutes
00Done

Builds on JavaScript

What you end up with

  1. The markup and the stylesheet are given; the JavaScript file is yours. The rule for the whole build: the array is the truth, the DOM is a picture of it. Change the array and re-render — never reach in and patch one node.

    Not finished yet

When it is finished