Unicord
New tier list
Shipping in phases

What’s changed

Every phase ships something usable on its own. Corrections stay on the record rather than being quietly edited away — where a plan turned out wrong, the entry says so.

Phase 4shipped
Shipped

Share links, remix, and a page for every board

A published board gets a permanent link, server-rendered from one read — no catalog API calls on the public page.

  • Publish dialog with title, description and public / unlisted / private
  • Remix opens anyone’s board as your own copy
  • /tierlists lists what you have published, with copy-link, edit and delete

Shipped before Phase 2, which is the one thing the plan said not to do: published documents now have to be backfilled when the generalized item model lands, instead of the migration being a pure client-side function.

f3972d2
Phase 1.6shipped
Shipped

The editor moved to /tierlist and / became a feed

A newsfeed-style landing page: hero, chronological feed of recently published boards, announcements, quick links.

  • Server-rendered, with the search term in the query string
  • Sort tabs are plain links, so the page needs no client bundle
c3236ed
Phase 1.5shipped
Shipped

Optional sign-in with Google and GitHub

Accounts gate nothing except publishing. The app still runs with no backend configured — the account UI simply hides itself.

9b5d0eb
Phase 1shipped
Shipped

The editor, end to end and entirely client-side

Search a real catalog, drag titles into tiers, undo, autosave, export. The whole product for a single user, with no account.

  • Drag between any row and the pool, and reorder within a row
  • Detail modal per cover: synopsis, score, studio, genres, outbound links
  • Autosave to this device, plus .json export and import
  • Export a PNG of the whole board
d9ae800
Phase 0shipped
Shipped

Scaffold

Next.js 16 App Router, TypeScript, Tailwind v4, dnd-kit, deployed.

The plan required an `images.remotePatterns` entry for s4.anilist.co. It was never needed — the app uses plain <img>, not next/image.

69cfe31