<!-- Generated from /work/lovable-dev at build time. Do not edit by hand. -->
<!-- Source of truth: the rendered page. A hand edit here is overwritten on the next build. -->

# Designesy — /work/lovable-dev

Canonical page: https://www.designesy.org/work/lovable-dev

---

## lovable.dev · A on arrival

Snapshot (2026-07-25): an AI-built site that scored A on the contract — without knowing it existed.

lovable.dev was scored by the same /api/score engine that grades every other site. On 2026-07-25 the result was an A — 19 pass, 0 fail, 3 warn, 4 skip — without the site ever citing the Designesy contract. Sites change and the engine evolves; score it live on /score to see where it stands today. This case study documents the snapshot: a generator that shipped good defaults and landed in contract territory by accident.

## Summary

lovable.dev scores A on the Designesy contract — 19 of 26 checks pass, 0 fail, 3 warn, 4 skip. The 3 warnings are token-strictness gaps (will-change scope, rem confirmation, tabular-nums). The 4 skips are browser-only checks that the current deployment cannot run. The headline is the zero in the failure column: an AI app platform shipped a site that breaks no contract rules the static engine can see.

## Score breakdown

### A · 93.2 · before only

19 pass · 0 fail · 3 warn · 4 skip

### Projected · A+

Resolving the 3 WARNs (v12, v16, v19) would land lovable.dev at A+ — no architectural change, only token tightening.

## The 3 warnings

### will-change restricted to transform and opacity only

A non-transform/opacity will-change declaration exists somewhere in the CSS. One-line fix: scope it to transform/opacity only.

### Rem-based scale: all text sizes in rem, root at 16px

Most text is in rem but the check wants confirmation the root is locked at 16px. A single html { font-size: 16px; } would resolve it.

### tabular-nums: 8 instances across the live CSS

Numeric contexts (stats, counts, prices) could use font-variant-numeric: tabular-nums to prevent column jitter. 0 instances found today.

## The 4 skips (honest)

Each skip is the deployment’s limitation, not the site’s. lovable.dev is not penalized for an unrun check — the engine returns SKIP with a diagnostic string.

### Responsive overflow at 4 viewports

Needs a browser at 375/720/860/1080. ENABLE_BROWSER_AUDIT=1 on the deployment.

### Sound toggle aria-pressed flip

Needs a browser to click the toggle and observe state. lovable.dev may not have a sound toggle — that would resolve as PASS or WARN.

### Core Web Vitals (LCP/INP/CLS)

Needs PageSpeed Insights API or a Chromium CDP trace. PSI_API_KEY on the deployment.

### Primary button WCAG AA contrast

Browser check — the static path cannot measure computed contrast against a signal fill.

## Lessons

## Sources

- [Score lovable.dev now — Re-run the live engine against the same URL](https://www.designesy.org/score?url=lovable.dev)
- [Design system contract v0.4.0 — The contract lovable.dev passes without citing](https://www.designesy.org/contracts/design-system)
- [Score your Lovable site — Target landing page for Lovable-built sites](https://www.designesy.org/score/lovable)
- [Work — case studies — Index](https://www.designesy.org/work)
