{"id":44837,"library":"ember-service-worker-cache-first","title":"ember-service-worker-cache-first","description":"An Ember Service Worker plugin that implements a cache-first (stale-while-revalidate) strategy for serving cached content, falling back to network updates. Version 0.6.3 is current, with no recent releases; requires Node 6+ and Ember Service Worker. Alternative to other caching plugins with regex-based URL pattern matching and versioning for cache busting. Built by DockYard.","status":"maintenance","version":"0.6.3","language":"javascript","source_language":"en","source_url":"https://github.com/DockYard/ember-service-worker-cache-first","tags":["javascript","ember-addon","ember-service-worker-plugin"],"install":[{"cmd":"npm install ember-service-worker-cache-first","lang":"bash","label":"npm"},{"cmd":"yarn add ember-service-worker-cache-first","lang":"bash","label":"yarn"},{"cmd":"pnpm add ember-service-worker-cache-first","lang":"bash","label":"pnpm"}],"dependencies":[{"reason":"peer dependency that provides the service worker infrastructure","package":"ember-service-worker","optional":false}],"imports":[{"note":"Configuration is done in ember-cli-build.js, not imported. The plugin is an Ember addon that auto-registers.","symbol":"esw-cache-first config","correct":"// In ember-cli-build.js\nlet app = new EmberApp(defaults, {\n  'esw-cache-first': { patterns: ['/api/(.+)'], version: '1' }\n});"}],"quickstart":{"code":"// Install the addon\nember install ember-service-worker-cache-first\n\n// Configure in ember-cli-build.js\nlet EmberApp = require('ember-cli/lib/broccoli/ember-app');\nmodule.exports = function(defaults) {\n  let app = new EmberApp(defaults, {\n    'esw-cache-first': {\n      patterns: [\n        '/api/v1/(.+)',\n        'https://cdn.example.com/assets/fonts/(.+)',\n        'https://cdn.example.com/assets/images/((?!avatars/).+)'\n      ],\n      version: '1'\n    }\n  });\n  return app.toTree();\n};","lang":"javascript","description":"Installs the addon and configures URL patterns and version for cache-first service worker strategy."},"warnings":[{"fix":"Consider using an alternative caching plugin or updating manually.","message":"Package has not been updated since 2017 and may not work with latest Ember versions.","severity":"deprecated","affected_versions":">=0.6.3"},{"fix":"Enable 'Update on reload' in Chrome DevTools > Application > Service Workers.","message":"Assets may not update in development mode due to service worker caching.","severity":"gotcha","affected_versions":"*"},{"fix":"Run `ember install ember-service-worker` before this plugin.","message":"Requires ember-service-worker addon to be installed.","severity":"breaking","affected_versions":"*"},{"fix":"Override engines in package.json or use a compatible Node version.","message":"Node engines specified as '6.* || 8.* || >= 10.*' — may break on Node 12+ due to engine constraint.","severity":"breaking","affected_versions":">=0.6.3"},{"fix":"Use string patterns like '/api/(.+)' not RegExp literals.","message":"Patterns are RegExp strings, not actual RegExp objects. Double escaping required for backslashes.","severity":"gotcha","affected_versions":"*"}],"env_vars":null,"search_vec":"'0.6.3':33 '6':42 'addon':70 'altern':47 'back':28 'base':55 'built':64 'bust':63 'cach':5,16,25,50,62 'cache-first':15 'content':26 'current':35 'dockyard':66 'ember':2,8,44,69,72 'ember-addon':68 'ember-service-worker-cache-first':1 'ember-service-worker-plugin':71 'fall':27 'first':6,17 'implement':13 'javascript':67 'match':58 'network':30 'node':41 'pattern':57 'plugin':11,51,75 'recent':38 'regex':54 'regex-bas':53 'releas':39 'requir':40 'revalid':21 'serv':24 'servic':3,9,45,73 'stale':19 'stale-while-revalid':18 'strategi':22 'updat':31 'url':56 'version':32,60 'worker':4,10,46,74","created_at":"2026-06-07T12:52:04.515973+00:00","updated_at":"2026-06-07T12:52:04.515973+00:00","problems":[{"fix":"Upgrade Node.js to version 6 or higher.","cause":"Old Node.js version","error":"Ember CLI requires Node.js 6 or higher"},{"fix":"Run `ember install ember-service-worker` first.","cause":"Peer dependency not installed","error":"Missing ember-service-worker addon"},{"fix":"Use double backslashes for literal backslashes in the string pattern, e.g., '/api/v1/(.+)'.","cause":"RegExp patterns not escaped correctly in ember-cli-build.js","error":"Patterns not matching URLs"}],"ecosystem":"npm","meta_description":null,"install_score":null,"quickstart_score":null,"quickstart_tag":null,"pypi_latest":null,"cli_name":null,"cli_version":null,"type":"library","homepage":"https://github.com/DockYard/ember-service-worker-cache-first#readme","github":"https://github.com/DockYard/ember-service-worker-cache-first","docs":null,"changelog":null,"pypi":null,"npm":"ember-service-worker-cache-first","openapi_spec":null,"status_page":null,"smithery":null,"categories":["devops"],"base_url":null,"auth_type":null,"provenance":{"verified_status":null,"verified_at":null,"last_verified":"2026-06-07","next_check":"2026-09-05","install_tag":null}}