Verdict is built for review publications and affiliate sites. It publishes scored reviews, product comparisons, and regular posts, and gives all three the same commercial building blocks: score badges computed from a published breakdown, pros and cons, specification tables, and retailer buy boxes that carry your affiliate rel and disclosure automatically. A product's retailers and specs live in the frontmatter of the review that covers it, so publishing means editing one file — and the same blocks are available to a plain post through a small set of MDX components. The output is static Astro with no framework islands.
Features
- Reviews, comparisons, and posts share one card and one archive layout, so mixed listings stay coherent
- Scores computed at build time as the weighted average of a published breakdown, so the badge can never disagree with the table under it
- Five score bands with their own colours, labels, and meanings, all defined in one scoring config file
- A colour per category — three gradient stops plus a label ink — carried to every surface that mentions it
- No featured-image requirement: article pages open on the category gradient band rather than a hero photo
- Affiliate-ready commerce blocks: a buy box listing every retailer, an inline buy button, and a pick block for roundups, with the configured rel attribute on every outbound link and the disclosure printed beside the button and in the footer
- Comparison tables with products as columns and criteria as rows, the winning cell marked, and the criterion column pinned while products scroll on a phone
- MDX components for post bodies: Pick, BuyButton, SpecTable, ProsCons, Callout, KeyNumbers, and TestBench
- Paginated category, tag, and reviewer archives, plus a full-width category menu carrying each desk's most recent cover
- Built-in client-side search with a keyboard command palette and a dedicated results page
- A share sheet with eleven targets, built on a native dialog element so focus trapping and Escape are the browser's
- Revision dates as first-class: an updated date takes over on cards and headers, re-sorts the RSS feed, and prints a dated revision note
- Structured data matching the page — Review schema with the same rating and scale that is printed, Article for everything else
- Canonical URLs, sitemap, RSS, Open Graph, and Twitter/X cards derived from one site URL
- Pure-CSS motion, flattened under reduced-motion preferences; the only client JavaScript is search, the mobile menu, and reading progress
- Two self-hosted variable fonts (Jost, Inter), subset to latin and latin-ext, and local icons — no external font or icon requests
- Semantic landmarks, one heading level one per page, skip link, visible focus styles, and keyboard-operable menus and dialogs
- Provider-neutral newsletter and contact forms; Tailwind CSS 4 design tokens
- Static output, ready for any static host, with a Cloudflare Workers config included
Best Used For
- Product review publications and testing labs
- Affiliate sites and buying guides
- Best-of roundups and head-to-head comparisons
- Independent reviewers and niche gear sites






