[{"data":1,"prerenderedAt":177},["ShallowReactive",2],{"blog-post-core-web-vitals-checklist":3},{"blocks":4,"summary":100,"person":108},[5,17,29,35,45,53,65,73,80],{"component":6,"data":7},"BlogPostHeader",{"slug":8,"kind":9,"title":10,"publishedAt":11,"readMinutes":12,"author":13},"core-web-vitals-checklist","article","[Core Web Vitals: a checklist for e-commerce]","[2 Aug 2026]",6,{"name":14,"role":15,"initials":16},"Michael","Fullstack developer","SW",{"component":18,"data":19},"BlogPostCover",{"cover":20},{"type":21,"lines":22},"text",[23,25],{"text":24},"LCP \u003C 2.5s",{"text":26,"scale":27,"muted":28},"INP \u003C 200ms · CLS \u003C 0.1",0.42,true,{"component":30,"data":31},"BlogPostSource",{"kind":9,"source":32},{"name":33,"url":34},"medium.com","https:\u002F\u002Fmedium.com\u002F",{"component":36,"data":37},"BlogPostChapter",{"id":38,"name":39,"hidden":28,"blocks":40},"intro","Introduction",[41],{"component":42,"data":43},"BlogPostText",{"text":44},"[Why Core Web Vitals matter for an online store.]",{"component":36,"data":46},{"id":47,"name":48,"blocks":49},"metrics","What Core Web Vitals measure",[50],{"component":42,"data":51},{"text":52},"[LCP, INP and CLS in one paragraph each.]",{"component":36,"data":54},{"id":55,"name":56,"blocks":57},"checklist","Checklist",[58],{"component":59,"data":60},"BlogPostList",{"ordered":28,"items":61},[62,63,64],"[Check one: optimize the hero image.]","[Check two: defer third-party scripts.]","[Check three: reserve space for dynamic blocks.]",{"component":36,"data":66},{"id":67,"name":68,"blocks":69},"results","Results",[70],{"component":42,"data":71},{"text":72},"[What changed after: metrics, conversion.]",{"component":74,"data":75},"BlogPostTags",{"tags":76},[77,78,79],"Performance","Core Web Vitals","E-commerce",{"component":81,"data":82},"BlogPostRelated",{"items":83},[84,93],{"slug":85,"kind":86,"title":87,"cover":88},"cwv-watch","tool","[cwv-watch]",{"type":89,"title":90,"command":91,"output":92},"terminal","github.com\u002F[user]\u002Fcwv-watch","uses: [user]\u002Fcwv-watch@v1","✓ LCP 1.8s · CLS 0.02 · INP 90ms",{"slug":94,"kind":95,"title":96,"cover":97},"lighthouse-100","video","[Lighthouse 100 in 30 minutes]",{"type":95,"title":98,"duration":99},"100 \u002F 100","31:05",{"slug":8,"kind":9,"title":10,"excerpt":101,"publishedAt":11,"readMinutes":12,"tags":102,"cover":103,"source":107},"[One or two sentences about what the reader will learn.]",[77,78,79],{"type":21,"lines":104},[105,106],{"text":24},{"text":26,"scale":27,"muted":28},{"name":33,"url":34},{"name":109,"alternateNames":110,"role":113,"skills":114},"Michael Malakhov",[111,112],"Михаил Малахов","Mikhail Malakhov","Fullstack Developer",[115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176],"JavaScript (ES6+)","TypeScript","HTML5","CSS3","Sass","Vue.js (Vue 2\u002FVue 3, Composition API)","Nuxt 3\u002F4","React","Next.js","Vue Router","Tailwind CSS","Bootstrap","SPA","SSR","MPA","SEO","Chrome DevTools","Node.js","NestJS","Express","Laravel","Rust","PostgreSQL","Redis","REST API","Docker","Nginx","CI\u002FCD","GitHub Actions","Vite","Webpack","Git","GitHub","GitLab","Figma","Redux","Vitest","Jest","Tauri","Prometheus","Storybook","Jira","Claude Code","Codex","Gemini","MCP","Atlassian Rovo","Zustand","SWR","TanStack Query","Pinia","Vuex","React Hook Form","Zod","Capacitor","GraphQL","WebSocket","Clinic.js","autocannon","Lighthouse","GitHub Copilot","AI agents",1793309472529]