Tailwind V4 Shadcn
ever-works/ever-works
Production-tested setup for Tailwind CSS v4 with shadcn/ui, Vite, and React.
Audit and fix visual hierarchy, spacing, color, and depth in web UIs.
$ npx skills add wondelai/skills --skill refactoring-ui -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install wondelai/skills refactoring-ui --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/wondelai/skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/refactoring-ui .claude/skills/refactoring-ui && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "refactoring-ui" agent skill from https://github.com/wondelai/skills/tree/main/refactoring-ui into .claude/skills/refactoring-ui/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "refactoring-ui", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/wondelai/skills/tree/main/refactoring-uiType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add wondelai/skills --skill refactoring-ui -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install wondelai/skills refactoring-ui --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/wondelai/skills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/refactoring-ui .agents/skills/refactoring-ui && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "refactoring-ui" agent skill from https://github.com/wondelai/skills/tree/main/refactoring-ui into .agents/skills/refactoring-ui/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "refactoring-ui", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add wondelai/skills --skill refactoring-ui -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install wondelai/skills refactoring-ui --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/wondelai/skills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/refactoring-ui .cursor/skills/refactoring-ui && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "refactoring-ui" agent skill from https://github.com/wondelai/skills/tree/main/refactoring-ui into .cursor/skills/refactoring-ui/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "refactoring-ui", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/wondelai/skills.git --path refactoring-ui--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add wondelai/skills --skill refactoring-ui -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install wondelai/skills refactoring-ui --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/wondelai/skills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/refactoring-ui .gemini/skills/refactoring-ui && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "refactoring-ui" agent skill from https://github.com/wondelai/skills/tree/main/refactoring-ui into .gemini/skills/refactoring-ui/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "refactoring-ui", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install wondelai/skills refactoring-uiInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add wondelai/skills --skill refactoring-ui -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/wondelai/skills.git skills-src && mkdir -p .github/skills && cp -r skills-src/refactoring-ui .github/skills/refactoring-ui && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "refactoring-ui" agent skill from https://github.com/wondelai/skills/tree/main/refactoring-ui into .github/skills/refactoring-ui/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "refactoring-ui", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add wondelai/skills --skill refactoring-ui -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install wondelai/skills refactoring-ui --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/wondelai/skills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/refactoring-ui .opencode/skills/refactoring-ui && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "refactoring-ui" agent skill from https://github.com/wondelai/skills/tree/main/refactoring-ui into .opencode/skills/refactoring-ui/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "refactoring-ui", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
refactoring-uiAudit and fix visual hierarchy, spacing, color, and depth in web UIs.
Refactoring UI is an agent skill from wondelai/skills. Audit and fix visual hierarchy, spacing, color, and depth in web UIs. Use when the user mentions "my UI looks off" (or amateur/unprofessional), "fix the design", "Tailwind styling", "color palette", "visual hierarchy", "design system", "spacing scale", or "component styling". Also trigger when building consistent design tokens, creating dark mode themes, improving data-visualization clarity, or polishing UI details before launch. Covers grayscale-first workflow, constrained design scales, shadows, and component…
Its SKILL.md is about 3.9k tokens, which your agent loads only when the skill is triggered. The skill folder holds 6 other files, including reference files (for example `references/accessibility-depth.md`, `references/advanced-patterns.md` and `references/animation-microinteractions.md`).
It sits in Frontend & Design, covering Typography, Theming and dark mode and Refactoring. It works with Tailwind CSS. The repository describes itself as: Wondel.ai Agent Skills — Business, Marketing, UX & Coding Frameworks from Bestselling Books. 50 skills + 12 guided journeys for Claude Code, Codex, Cursor & other agentskills.io… The licence is MIT.
7 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit c172996. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md.
From the folder's file list and the shell code blocks in SKILL.md.
Links to these hosts (documentation or services it may open):
refactoringui.comamazon.comFrom URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Refactoring UI loads about 3.9k tokens when it runs, and up to ~17k if it reads all its reference files. Until then it costs about 156 tokens; SKILL.md has 1,778 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from wondelai/skills at commit c172996, republished under its MIT licence (© wondelai). 1,778 words, ~3,896 tokens.
.claude/skills/refactoring-ui/SKILL.md (or your agent's skills folder). This skill also uses 5 other files; get the full folder from GitHub.A practical, opinionated approach to UI design. Apply these principles when generating frontend code, reviewing designs, or advising on visual improvements.
Design in grayscale first. Add color last. This forces proper hierarchy through spacing, contrast, and typography before relying on color as a crutch.
The foundation: Great UI isn't about talent — it's about systems. Constrained scales for spacing, type, color, and shadows produce consistently professional results. Start with too much white space and remove; leave details (icons, shadows, micro-interactions) until layout and hierarchy work.
Goal: 10/10. Score by counting satisfied rows in the Quick Diagnostic (8 yes/no checks): score = round(satisfied / 8 × 10). Bands follow directly: 10 = all 8 pass (hierarchy reads blurred and in grayscale, every value on a scale); 9 = exactly 1 gap (usually weak hierarchy or thin white space); 6-8 = 2-3 gaps; <=5 = 4+ gaps (arbitrary spacing, color doing the work hierarchy should, or failing contrast). Always state the current score and the specific diagnostic rows to fix to reach 10/10.
Seven principles for building professional interfaces without a designer:
Core concept: Not everything can be important. Create hierarchy through three levers: size, weight, and color.
Why it works: When every element competes for attention, nothing stands out; deliberately de-emphasizing secondary content makes primary content powerful by contrast.
Key insights:
Product applications:
| Context | Hierarchy Technique | Example |
|---|---|---|
| Form fields | De-emphasize labels, emphasize values | Small uppercase label above large value |
| Dashboards | Key metric large, context small | "$42,300" large, "vs last month" small |
| Tables | De-emphasize headers, emphasize data | Headers uppercase small gray, data normal |
Design patterns:
Ethical boundary: Don't use hierarchy tricks to hide important information like pricing, terms, or cancellation options.
See references/advanced-patterns.md when designing components beyond static layout — interaction/hover/focus states, form design, empty states, border-radius systems, text truncation, and responsive breakpoints.
Core concept: Use a constrained spacing scale, not arbitrary values. Spacing defines relationships — closer elements read as more related.
Why it works: Arbitrary spacing (padding: 13px) creates inconsistency; a fixed scale forces deliberate decisions and harmonious layouts. Generous spacing feels premium; dense feels overwhelming.
Key insights:
max-w-prose), forms to 300-500px; full-width is almost never rightProduct applications:
| Context | Spacing Strategy | Example |
|---|---|---|
| Icon + label | Tight coupling (4px) | Small gap keeps them connected |
| Card sections | Section separation (24px) | Title, content, footer blocks |
| Page sections | Major sections (48-64px) | Hero, features, testimonials |
CSS patterns:
p-1(4px) p-2(8px) p-4(16px) p-6(24px) p-8(32px) p-12(48px) p-16(64px)max-w-prose(65ch) max-w-md(28rem) max-w-lg(32rem) max-w-xl(36rem)gap-2 for related items, gap-6 for section separationCore concept: Use a modular type scale, constrain line heights by context, and limit to two font families maximum.
Why it works: A modular scale (steps growing ~1.2× each) creates natural visual rhythm; tight line heights on headings and relaxed on body text improve readability in each context.
Key insights:
Product applications:
| Context | Typography Rule | Example |
|---|---|---|
| Hero headline | 36px, line-height 1.1, bold | Large impactful statement |
| Body text | 16px, line-height 1.75, normal | Comfortable reading |
| Captions/labels | 12-14px, line-height 1.5, medium gray | Secondary information |
CSS patterns:
text-xs(12px) text-sm(14px) text-base(16px) text-lg(18px) text-xl(20px)font-normal(400) font-medium(500) font-semibold(600) font-bold(700)leading-tight(1.25) leading-normal(1.5) leading-relaxed(1.75)Core concept: Build a systematic palette with 5-9 shades per color, add subtle saturation to grays, and design in grayscale first.
Why it works: Random colors clash; a predefined shade system ensures consistency, and HSL adjustments create natural-feeling lighter and darker variants.
Key insights:
#111827, not #000000#64748b; warm UI: yellow/brown like #78716c)#374151 (gray-700) on white, not lighter graysProduct applications:
| Context | Color Strategy | Example |
|---|---|---|
| Primary palette | 9 shades (50-900) of brand color | Blue-500 buttons, Blue-100 backgrounds |
| Semantic colors | Success/warning/error with shade ranges | Green-500 success, Red-500 errors |
| Text colors | Three levels: dark, medium, light | text-gray-900, text-gray-600, text-gray-400 |
CSS patterns:
text-gray-900(dark) text-gray-600(medium) text-gray-400(light)bg-blue-50 for subtle backgrounds, bg-blue-500 for primary actionsborder-gray-200 for subtle borders, border-gray-300 for strongerSee references/theming-dark-mode.md when building a dark theme — hex shade scales, why darkest is #111827 not black (halation), and conveying elevation via lightness instead of shadow. See references/accessibility-depth.md when contrast, focus rings, keyboard nav, or screen-reader support is in scope — full WCAG 2.1 AA checklist and fixes.
Core concept: Use a shadow scale to convey elevation — small shadows for slightly raised elements, large shadows for floating ones.
Why it works: The eye reads shadow size as height above the page; a consistent scale makes elevation legible, so users intuit what's interactive, floating, or background.
Key insights:
Product applications:
| Context | Shadow Level | Example |
|---|---|---|
| Buttons | shadow-sm (subtle raise) | Slightly elevated above surface |
| Dropdowns | shadow-lg (floating) | Menu clearly above content |
| Modals | shadow-xl (highest) | Overlay detached from page |
CSS patterns:
shadow-sm: 0 1px 2px rgba(0,0,0,0.05)shadow-md: 0 4px 6px rgba(0,0,0,0.1)shadow-lg: 0 10px 15px rgba(0,0,0,0.1)shadow-xl: 0 20px 25px rgba(0,0,0,0.15)See references/animation-microinteractions.md when adding motion to interactive elements — durations, easing curves, loading states, and the prefers-reduced-motion rule.
Core concept: Treat images as design elements, not afterthoughts. Size icons deliberately and use overlays to keep text readable on images.
Why it works: Poorly sized icons look awkward and unstyled images break consistency; deliberate treatment (overlays, object-fit, radius) makes interfaces feel polished.
Key insights:
object-fit: cover with fixed aspect ratios and crop deliberatelyProduct applications:
| Context | Image/Icon Technique | Example |
|---|---|---|
| Hero images | Semi-transparent gradient overlay | Text readable over any photo |
| Avatars | Consistent size, rounded, fallback initials | 40px circle, object-fit cover |
| Empty states | Custom illustration + CTA | Friendly illustration with "Get started" |
CSS patterns:
object-fit: cover with fixed aspect-ratio for consistent displayw-4 h-4 inline, w-6 h-6 navigation, w-8 h-8 feature iconsbg-gradient-to-t from-black/60 to-transparent for text on imagesCore concept: Don't center everything. Use alignment, overlap, and emphasis variation to create engaging compositions.
Why it works: A consistent left edge gives the eye a fixed return point per line, so it costs less to scan; centered multi-line text moves that edge every line and slows reading.
Key insights:
Product applications:
| Context | Layout Strategy | Example |
|---|---|---|
| Hero sections | Centered text, generous spacing | Short headline + subtext + single CTA |
| Blog feeds | Varied card sizes for emphasis | First post large, rest in 2-column grid |
| Content pages | Constrained width, left-aligned | max-w-prose container with left text |
CSS patterns:
text-left by default, text-center only for heroes and short headlinesgrid grid-cols-3 gap-6 for feature grids; max-w-4xl mx-auto for page containersoverflow-hidden on cards with object-fit: cover images that bleed to edgesSee references/data-visualization.md when laying out charts, tables, or dashboards — chart-type selection, color use in charts, table density, and dashboard composition.
| Mistake | Why It Fails | Fix |
|---|---|---|
| "Looks amateur" | Insufficient white space, unconstrained widths | More white space, constrain content widths |
| "Feels flat" | No depth differentiation | Subtle shadows, border-bottom on sections |
| "Text is hard to read" | Poor line-height, too wide, low contrast | Increase line-height, constrain width, boost contrast |
| "Everything looks the same" | No visual hierarchy | Vary size/weight/color between primary and secondary |
| "Feels cluttered" | Equal spacing everywhere | Group related items, larger gaps between groups |
| "Colors clash" | Random choices, no system | Reduce saturation, more grays, limit to palette |
| "Buttons don't pop" | Low contrast with surroundings | Increase contrast, add shadow |
| Arbitrary values | px values like 13, 17, 23 breed inconsistency | Stick to the spacing and type scales |
Audit any UI design:
| Question | If No | Action |
|---|---|---|
| Does hierarchy read when squinting (blur test)? | Elements competing | Increase primary/secondary contrast |
| Does it work in grayscale? | Color is a crutch | Strengthen size/weight/spacing hierarchy |
| Is there enough white space? | Probably not — most designs are too dense | Increase spacing, especially between groups |
| Are labels de-emphasized vs. values? | Labels competing with data | Smaller, lighter, or uppercase-small labels |
| Does spacing follow a consistent scale? | Arbitrary spacing = visual noise | Use 4/8/16/24/32/48/64 only |
| Is text width constrained? | Long lines fatigue readers | Apply max-w-prose (~65ch) |
| Do colors have sufficient contrast? | Accessibility failure | WCAG-check; use gray-700+ on white |
| Are shadows appropriate for elevation? | Elements float at wrong level | Match shadow scale to element purpose |
For the complete system with visual before/after examples:
Adam Wathan, creator of Tailwind CSS, and Steve Schoger, the visual designer behind its design language, wrote Refactoring UI to teach developers systematic, repeatable design techniques. Their approach replaces artistic talent with constrained systems — fixed scales for spacing, typography, color, and shadows — that produce professional results.
© wondelai, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 5 other files (references) in refactoring-ui of wondelai/skills.
Open the folder on GitHubat commit c172996
Refactoring UI next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Refactoring UI this skillwondelai/skills | 2.4k | — | ~3.9k | Automated safety check: Pass | MIT | |
| Tailwind V4 Shadcnever-works/ever-works | 162 | 2 repos | ~3.8k | Automated safety check: Pass | MIT | |
| Frontend UI Foundryjiushiwon/wg-skills | 114 | — | ~1.4k | Automated safety check: Pass | Apache-2.0 | |
| Design System Generatemohitagw15856/pm-claude-skills | 1.4k | — | ~1.7k | Automated safety check: Pass | MIT | |
| Scalar Design Systemscalar/scalar | 16k | — | ~2.7k | Automated safety check: Pass | MIT | |
| Tailwind CSS Patternsever-works/ever-works | 162 | 3 repos | ~1.6k | Automated safety check: Notes | AGPL-3.0 |
ever-works/ever-works
Production-tested setup for Tailwind CSS v4 with shadcn/ui, Vite, and React.
jiushiwon/wg-skills
A skill your agent uses when generating UI for a specific scenario (mobile/PC/官网/管理端/营销页/文档/金融/原生/3D), when refactoring an existing HTML/Vue/React project to a unified design system, when extracting…
mohitagw15856/pm-claude-skills
Generate a complete, accessibility-checked design system from scratch — colour ramps, type scale, spacing, elevation, and exports for CSS, Tailwind, design tokens, Figma, VS Code and PowerPoint.
scalar/scalar
Scalar's design system — design tokens, theming (@scalar/themes), CSS variables, and the @scalar/components library.
ever-works/ever-works
Provides comprehensive Tailwind CSS utility-first styling patterns including responsive design, layout utilities, flexbox, grid, spacing, typography, colors, and modern CSS best practices.
bryllim/bryl-minimal-design
Apply the bryl-minimal design language — a monochrome, typography-driven minimal aesthetic with halftone dot textures, pixel-font display headings, tiny uppercase monospace labels, soft large-radius…
wondelai/skills
Navigate the technology adoption lifecycle from early adopters to mainstream market.
wondelai/skills
Apply foundational design principles: affordances, signifiers, constraints, feedback, and conceptual models.
wondelai/skills
Run a structured 5-day process to prototype, test, and validate product ideas with real users.
wondelai/skills
Design habit-forming product loops using the Hook Model (Trigger, Action, Variable Reward, Investment).
wondelai/skills
Diagnose and fix retention problems using behavior design (B=MAP).
wondelai/skills
Design products and pricing around validated willingness to pay, from Ramanujam & Tacke's "Monetizing Innovation".
Works with
Categories
Audit and fix visual hierarchy, spacing, color, and depth in web UIs. Refactoring UI is an agent skill from wondelai/skills. Audit and fix visual hierarchy, spacing, color, and depth in web UIs.
Refactoring UI fits situations like: the user mentions my UI looks off (or amateur/unprofessional); tailwind styling; visual hierarchy; component styling.
Run `npx skills add wondelai/skills --skill refactoring-ui -a claude-code`. Or copy the skill folder (refactoring-ui in wondelai/skills) into .claude/skills/refactoring-ui in your project. Claude Code loads it when a task matches its description.
Run `npx skills add wondelai/skills --skill refactoring-ui -a codex`. Or copy the skill folder (refactoring-ui in wondelai/skills) into .agents/skills/refactoring-ui in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add wondelai/skills --skill refactoring-ui -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/refactoring-ui, .gemini/skills/refactoring-ui, .github/skills/refactoring-ui and .opencode/skills/refactoring-ui in your project.
SKILL.md names no scripts, command-line tools or credentials: Refactoring UI is instructions for the agent only.
SKILL.md names 2 domains. As links in the text: refactoringui.com and amazon.com. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Refactoring UI is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.
About 3.9k tokens (SKILL.md is roughly 16k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 14k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Refactoring UI: Tailwind V4 Shadcn (ever-works/ever-works, 162 stars), Frontend UI Foundry (jiushiwon/wg-skills, 114 stars), Design System Generate (mohitagw15856/pm-claude-skills, 1.4k stars) and Scalar Design System (scalar/scalar, 16k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
wondelai (a GitHub organization) maintains it in wondelai/skills, which has 2,362 GitHub stars. The repository holds 62 skills in this directory. The repository was last updated on September 10, 2026.
Source: wondelai/skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.