sveltejs/svelte
Reviewed against Rams quality heuristics: accessibility, color, typography, spacing, components, motion, UX, and craft.
30 files reviewed·July 29, 2026
Top fix
No fixes needed, sampled files show consistent internal API shape
More findings
- No dead code paths or ad-hoc exceptions found in review
- Naming and structure stay consistent across compiler and runtime files
Verdict
Zero issues across 30 files is the story here: consistent structure, no critical or serious findings, nothing fighting the pattern. The biggest risk is simply that a 30-file sample can't guarantee the rest of the codebase holds the same line.
Files Rams reviewed
packages/svelte/tests/css/samples/container-query/expected.css
packages/svelte/tests/css/samples/container-query/input.svelte
packages/svelte/tests/css/samples/css-prune-edge-cases/expected.css
packages/svelte/tests/css/samples/css-prune-edge-cases/input.svelte
packages/svelte/tests/css/samples/general-siblings-combinator-each-else-nested/expected.css
packages/svelte/tests/css/samples/general-siblings-combinator-each-else-nested/input.svelte
packages/svelte/tests/css/samples/general-siblings-combinator-each-nested/expected.css
packages/svelte/tests/css/samples/general-siblings-combinator-each-nested/input.svelte
packages/svelte/tests/css/samples/global-block/expected.css
packages/svelte/tests/css/samples/global-block/input.svelte
packages/svelte/tests/css/samples/has/expected.css
packages/svelte/tests/css/samples/has/input.svelte
packages/svelte/tests/css/samples/siblings-combinator-each-else-nested/expected.css
packages/svelte/tests/css/samples/siblings-combinator-each-else-nested/input.svelte
packages/svelte/tests/css/samples/siblings-combinator-each-nested/expected.css
packages/svelte/tests/css/samples/siblings-combinator-each-nested/input.svelte
packages/svelte/tests/hydration/samples/rich-select/main.svelte
packages/svelte/tests/manual/each-stress-test/main.svelte
packages/svelte/tests/migrate/samples/event-handlers-with-alias/input.svelte
packages/svelte/tests/migrate/samples/event-handlers-with-alias/output.svelte
packages/svelte/tests/migrate/samples/event-handlers/input.svelte
packages/svelte/tests/migrate/samples/event-handlers/output.svelte
packages/svelte/tests/migrate/samples/is-not-where-has/input.svelte
packages/svelte/tests/migrate/samples/is-not-where-has/output.svelte
packages/svelte/tests/migrate/samples/jsdoc-with-comments/input.svelte
packages/svelte/tests/migrate/samples/jsdoc-with-comments/output.svelte
packages/svelte/tests/migrate/samples/single-assignment-labeled/output.svelte
packages/svelte/tests/migrate/samples/slot-non-identifier/output.svelte
packages/svelte/tests/migrate/samples/slot-usages/input.svelte
packages/svelte/tests/migrate/samples/slot-usages/output.svelte
Working well
- Wrapping each checkbox input inside its own `<label>` for 'transition' and 'slow' gives a full clickable target with zero markup overhead, which is exactly the right pattern for binary toggles in a dev tool.
- The test fixture cleanly isolates each rich-vs-plain select/option case with a descriptive comment, making the expected compiler behavior easy to verify at a glance.
- Test fixture appropriately isolates a wide matrix of on:directive combinations for migration-tool coverage.
- Test fixture is well-scoped and clearly documents the exact edge cases it's covering.
Scored July 29, 2026 with Rams Engine v0.0.3 · Engine changelog
This page is an automated design review of sveltejs/svelte’s UI code: 30 files read against 258 versioned rules covering accessibility, color, typography, spacing, components, UX, motion, and craft. The score is out of 100; any confirmed critical issue caps it at 59.
More design scores
Score your own repo.
Free on public repos, no account. The same engine that scored this page reads your UI code and mints a score page like this one.
Public repos only. The full engine reviews the UI code and mints a public score page — we email you the link too. Already-scored repos open instantly.