Skip to content
yceffort
PostsSeriesTagsAbout🧪 Research
KO

Tweaks

theme
accent palette
film grain
minimal mode
03 POSTS

Pwa 1

  • #pwa#caching#service-worker

    Saving Marp Slides from a Next.js App for Offline Use

    From running the existing Marp viewer offline to fixing what deployments, networks, and the presenter window exposed along the way.

    2026-09-30·23 min read
  • â—† Service Worker Caching Deep Dive · Part 2
    #service-worker#caching#nextjs

    Applying Service Worker Caching: App Router Traps and GA4 Field Data

    Armed with the theory from Part 1, I made this blog (Next.js App Router) open offline. On the first deploy, the post I had just read would not open offline; on the second, posts opened but every image was broken. This is a chronicle of fixing, one deploy at a time, the traps created by soft navigation, prefetching, and next/image, and a record of settling the results with GA4 real-user data. Returning-visitor FCP improved by 634ms on average, while TTFB worsened by 525ms on average. The second post of the Service Worker Caching Deep Dive series.

    2026-08-27·Updated 2026-09-02·27 min read
  • â—† Service Worker Caching Deep Dive · Part 1
    #service-worker#caching#browser

    How Service Worker Caching Works: The Proxy, the Lifecycle, and Five Strategies

    A service worker is a programmable proxy standing between your site and the network. Where does it stand, why does the cache rot, why am I seeing the old version after deploying, what goes in under which strategy, and so, should you use it? Holding on to five questions you actually meet in practice, this post goes down to the details of state transitions and to a real measurement in which a 104KB opaque response was accounted as 6.6MB of storage. It is the general theory that did not fit into the cache chapter of Frontend Performance Optimization Deep Dive (published in Korean), and the first post of the Service Worker Caching Deep Dive series.

    2026-08-12·Updated 2026-09-02·24 min read
mailMail icongithubtwitter
yceffort
•
© 2026
•
https://yceffort.kr