README
cra-append-sw
Fork of cra-append-sw, but with Typescript files support. See below.
Utility tool to append custom code to ServiceWorker created by Create React App.
It allows to keep the default CRA configuration (no ejecting). It simply appends custom code to the ServiceWorker file created by CRA build scripts. By default, it bundles the code using very basic Webpack+Babel configuration (this can be omitted; see options).
Installation
$ npm install @cojam/cra-append-sw --save
Usage
$ cra-append-sw [options] <file>
Options
-s, --skip-compile Skip compilation
-h, --help Output usage information
-e, --env [path] (./.env) Path to environment variables file
-t, --tsconfig [path] (./tsconfig.json) Path to tsconfig file
-m, --mode [mode] Output mode
Output modes
dev
createspublic/<file>
instead of appending the code tobuild/service-worker.js
build
createsbuild/<file>
instead of appending the code tobuild/service-worker.js
replace
simply replacesbuild/service-worker.js
Usage with Create React App
In package.json
modify build script to:
"start": "react-scripts start && cra-append-sw --mode dev ./custom-sw.js",
"build": "react-scripts build && cra-append-sw ./custom-sw.js",
Usage with Typescript
The file is compiled based on your tsconfig.json
configuration. Please set these values for fields isolatedModules
and noEmit
:
{
"compilerOptions": {
"isolatedModules": false,
"noEmit": false
}
}