craigerskine.github.io/11ty-twind
https://craigerskine.github.io/11ty-twind
Ranks Overall #619 Build Awesome Starters #68
Data from Oct 3, 2026, 7:46 AM UTC old Measured once a week · 7 runs since Aug 20, 2026
Elsewhere:
PageSpeed Insights ·
Calibre ·
Treo ·
CrUX Vis ·
Tame the Bots ·
Scoring Calculator ·
Wayback Machine
https://craigerskine.github.io/11ty-twind/.
The same URL in a different form — a trailing slash — so both are treated as one site rather than two: one history, measured once. Lighthouse follows the redirect, so the numbers below describe the page actually served; the only cost is an extra hop on each run.
Lighthouse benchmark index was 4,440, 79% faster than this project's median of 2,486. CPU-bound metrics — TBT, TTI, main thread work — are affected by this and may have moved without the site changing at all.
Lab data is measured using Lighthouse, Mobile mode unless otherwise specified. Field data is reported from Chrome UX Report (using p75 measurements).
Stack
Lighthouse Scores LAB Simulated
Metrics LAB
No field data: the Chrome UX Report is not being collected for this project, so every figure below is from the Lighthouse run.
| Metric | Lab Simulated | ||
|---|---|---|---|
| Value | Change / range | Trend | |
| LCP CWV (estimate) Largest Contentful Paint | 1.79 s good | ↓ -19 ms (-1.1%) 1.79 s – 2.62 s | |
| INP CWV Interaction to Next Paint — field only, no lab run can measure it | n/a | — | |
| CLS CWV (estimate) Cumulative Layout Shift | 0.015 good | → no change 0.014 – 0.015 | |
| TBT Total Blocking Time | 0 ms good | → no change 0 ms – 0 ms | |
| FCP First Contentful Paint | 1.77 s good | ↓ -30 ms (-1.7%) 1.77 s – 2.62 s | |
| Speed Index | 1.77 s good | ↓ -30 ms (-1.7%) 1.77 s – 2.62 s | |
| TTFB Time to First Byte | 610 ms good | ↓ -4 ms (-0.7%) 603 ms – 841 ms | |
LCP Subparts LAB Unthrottled
The subparts attribute LCP to your server, resource discovery, download, or rendering. Note that the Lab LCP shown above is a simulated throttled estimate.
Page weight
| Metric | Value | Change / range | Trend |
|---|---|---|---|
| Page Weight | 139 kB | ↓ -79 B (-0.1%) 139 kB – 140 kB | |
| Requests | 9 | → no change 9 – 9 | |
| Third-party Weight | 52.4 kB | ↓ -9 B 52.4 kB – 53.1 kB | |
| Third-party CPU | 0 ms | → no change 0 ms – 0 ms | |
| Unused JS | 33.5 kB | → no change 33.5 kB – 33.5 kB | |
| Unused CSS | 0 B | → no change 0 B – 0 B |
By resource type
| Type | Transfer | Share | Size | Requests |
|---|---|---|---|---|
| script | 56% | 75.7 kB | 1 | |
| font | 35.8% | 48.5 kB | 1 | |
| document | 5.2% | 7.0 kB | 1 | |
| other | 2.5% | 3.4 kB | 3 | |
| stylesheet | 0.6% | 751 B | 1 | |
| Total | 139 kB | 9 |
Third parties 2 entities
| Entity | Transfer | Size | Main thread Simulated |
|---|---|---|---|
| Google Fonts | 49.2 kB | 0 ms | |
| iconify.design | 3.2 kB | 0 ms | |
| Total | 52.4 kB | 0 ms |
Without JavaScript
Nothing was painted until the scripts ran. This is a web performance and robustness issue!
The same load, photographed twice at 412×823: once with scripts disabled, once as rendered.
32.8% of pixels differ — parts of the page change. A shifted layout counts as difference, so a <noscript> banner alone can account for a large figure.
Page health
| Metric | Value | Change / range | Trend |
|---|---|---|---|
| Main Thread Work | 440 ms | ↓ -33 ms (-7%) 440 ms – 687 ms | |
| Long Tasks | 1 | → no change 1 – 1 | |
| DOM Elements | 308 | → no change 308 – 308 | |
| Axe Violations Violating nodes from a full Axe CLI run (more than Lighthouse reports) | 2 | → no change 2 – 2 | |
| A11y Failures | 0 | → no change 0 – 0 | |
| A11y Failing Nodes | 0 | → no change 0 – 0 |
Main thread work
| Task | Time | Share | Duration Simulated |
|---|---|---|---|
| script evaluation | 46% | 200 ms | |
| style layout | 26% | 115 ms | |
| other | 19% | 85 ms | |
| paint composite render | 4% | 16 ms | |
| script parse compile | 2% | 10 ms | |
| parse HTML | 2% | 9 ms | |
| garbage collection | 1% | 6 ms | |
| Total | 440 ms |
Axe violations axe-core 4.13.0, full rule set
2 violating nodes across 2 rules, 455 passing. This is a standalone Axe CLI run and is stricter than the subset Lighthouse already includes.
-
moderate
landmark-unique— Landmarks should have a unique role or role/label/title (i.e. accessible name) combination 1 nodeOffending element
-
.py-8<nav class="flex gap-4 mx-auto px-4 py-8 flex-col items-center max-w-7xl md:flex-row md:justify-between">
-
-
serious
scrollable-region-focusable— Scrollable region must have keyboard access 1 nodeOffending element
-
pre<pre class="language-twig">
-
Hygiene
Measurement log
Every stored run for this URL, newest first.
| When | Scores | Perf | LCP | CLS | TBT | Weight | Runs | Spread | Bench | Took | Archive |
|---|---|---|---|---|---|---|---|---|---|---|---|
| Oct 3, 2026, 7:46 AM UTC | 99 | 1.79 s | 0.015 | 0 ms | 139 kB | 3/3 | ±0 | 4,440 +79% | 19.8s |
|
|
| Sep 26, 2026, 3:42 AM UTC | 98 | 1.80 s | 0.015 | 0 ms | 139 kB | 3/3 | ±31 | 3,264 +31% | 26.4s |
|
|
| Sep 18, 2026, 11:02 PM UTC | 98 | 1.86 s | 0.014 | 0 ms | 139 kB | 3/3 | ±5 | 2,478 0% | 22.6s |
|
|
| Sep 11, 2026, 8:31 PM UTC | 93 | 2.62 s | 0.014 | 0 ms | 140 kB | 3/3 | ±5 | 2,329 -6% | 25.2s |
|
|
| Sep 4, 2026, 6:08 PM UTC | 98 | 1.85 s | 0.014 | 0 ms | 139 kB | 3/3 | ±5 | 2,295 -8% | 22.6s |
|
|
| Aug 28, 2026, 5:39 PM UTC | 98 | 1.90 s | 0.014 | 0 ms | 139 kB | 3/3 | ±1 | 2,632 +6% | 21.3s |
|
|
| Aug 20, 2026, 7:12 PM UTC | 97 | 2.04 s | 0.014 | 0 ms | 140 kB | 2/3 | ±1 | 3,000 +21% | 20.4s |
|
Embed this score
Use this web component to show craigerskine.github.io/11ty-twind's scores on any website, updated whenever this instance re-measures. Don’t forget to bundle the speedlify2-score.js component code into your site!
<speedlify2-score speedlify-url="https://www.speedlify.dev/" url="https://craigerskine.github.io/11ty-twind"></speedlify2-score>