diff --git a/.editorconfig b/.editorconfig
deleted file mode 100644
index dab5d2a..0000000
--- a/.editorconfig
+++ /dev/null
@@ -1,180 +0,0 @@
-#/
-# @license Apache-2.0
-#
-# Copyright (c) 2017 The Stdlib Authors.
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-#    http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#/
-
-# EditorConfig configuration file (see <http://editorconfig.org/>).
-
-# Indicate that this file is a root-level configuration file:
-root = true
-
-# Set properties for all files:
-[*]
-end_of_line = lf
-charset = utf-8
-trim_trailing_whitespace = true
-insert_final_newline = true
-
-# Set properties for JavaScript files:
-[*.{js,js.txt}]
-indent_style = tab
-
-# Set properties for JavaScript ES module files:
-[*.{mjs,mjs.txt}]
-indent_style = tab
-
-# Set properties for JavaScript CommonJS files:
-[*.{cjs,cjs.txt}]
-indent_style = tab
-
-# Set properties for JSON files:
-[*.{json,json.txt}]
-indent_style = space
-indent_size = 2
-
-# Set properties for `cli_opts.json` files:
-[cli_opts.json]
-indent_style = tab
-
-# Set properties for TypeScript files:
-[*.ts]
-indent_style = tab
-
-# Set properties for Python files:
-[*.{py,py.txt}]
-indent_style = space
-indent_size = 4
-
-# Set properties for Julia files:
-[*.{jl,jl.txt}]
-indent_style = tab
-
-# Set properties for R files:
-[*.{R,R.txt}]
-indent_style = tab
-
-# Set properties for C files:
-[*.{c,c.txt}]
-indent_style = tab
-
-# Set properties for C header files:
-[*.{h,h.txt}]
-indent_style = tab
-
-# Set properties for C++ files:
-[*.{cpp,cpp.txt}]
-indent_style = tab
-
-# Set properties for C++ header files:
-[*.{hpp,hpp.txt}]
-indent_style = tab
-
-# Set properties for Fortran files:
-[*.{f,f.txt}]
-indent_style = space
-indent_size = 2
-
-# Set properties for shell files:
-[*.{sh,sh.txt}]
-indent_style = tab
-
-# Set properties for AWK files:
-[*.{awk,awk.txt}]
-indent_style = tab
-
-# Set properties for HTML files:
-[*.{html,html.txt}]
-indent_style = tab
-tab_width = 2
-
-# Set properties for XML files:
-[*.{xml,xml.txt}]
-indent_style = tab
-tab_width = 2
-
-# Set properties for CSS files:
-[*.{css,css.txt}]
-indent_style = tab
-
-# Set properties for Makefiles:
-[Makefile]
-indent_style = tab
-
-[*.{mk,mk.txt}]
-indent_style = tab
-
-# Set properties for Markdown files:
-[*.{md,md.txt}]
-indent_style = space
-indent_size = 4
-trim_trailing_whitespace = true # Note: this disables using two spaces to force a hard line break, which is permitted in Markdown. As we don't typically follow that practice (TMK), we should be safe to automatically trim.
-
-# Set properties for `usage.txt` files:
-[usage.txt]
-indent_style = space
-indent_size = 2
-
-# Set properties for `repl.txt` files:
-[repl.txt]
-indent_style = space
-indent_size = 4
-
-# Set properties for `package.json` files:
-[package.{json,json.txt}]
-indent_style = space
-indent_size = 2
-
-# Set properties for `datapackage.json` files:
-[datapackage.json]
-indent_style = space
-indent_size = 2
-
-# Set properties for `manifest.json` files:
-[manifest.json]
-indent_style = space
-indent_size = 2
-
-# Set properties for `tsconfig.json` files:
-[tsconfig.json]
-indent_style = space
-indent_size = 2
-
-# Set properties for LaTeX files:
-[*.{tex,tex.txt}]
-indent_style = tab
-
-# Set properties for LaTeX Bibliography files:
-[*.{bib,bib.txt}]
-indent_style = tab
-
-# Set properties for YAML files:
-[*.{yml,yml.txt}]
-indent_style = space
-indent_size = 2
-
-# Set properties for GYP files:
-[binding.gyp]
-indent_style = space
-indent_size = 2
-
-[*.gypi]
-indent_style = space
-indent_size = 2
-
-# Set properties for citation files:
-[*.{cff,cff.txt}]
-indent_style = space
-indent_size = 2
diff --git a/.eslintrc.js b/.eslintrc.js
deleted file mode 100644
index 5f30286..0000000
--- a/.eslintrc.js
+++ /dev/null
@@ -1 +0,0 @@
-/* For the `eslint` rules of this project, consult the main repository at https://github.com/stdlib-js/stdlib */
diff --git a/.gitattributes b/.gitattributes
deleted file mode 100644
index 1c88e69..0000000
--- a/.gitattributes
+++ /dev/null
@@ -1,66 +0,0 @@
-#/
-# @license Apache-2.0
-#
-# Copyright (c) 2017 The Stdlib Authors.
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-#    http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#/
-
-# Configuration file which assigns attributes to pathnames.
-#
-# [1]: https://git-scm.com/docs/gitattributes
-
-# Automatically normalize the line endings of any committed text files:
-* text=auto
-
-# Override line endings for certain files on checkout:
-*.crlf.csv text eol=crlf
-
-# Denote that certain files are binary and should not be modified:
-*.png binary
-*.jpg binary
-*.jpeg binary
-*.gif binary
-*.ico binary
-*.gz binary
-*.zip binary
-*.7z binary
-*.mp3 binary
-*.mp4 binary
-*.mov binary
-
-# Override what is considered "vendored" by GitHub's linguist:
-/lib/node_modules/** -linguist-vendored -linguist-generated
-
-# Configure directories which should *not* be included in GitHub language statistics:
-/deps/** linguist-vendored
-/dist/** linguist-generated
-/workshops/** linguist-vendored
-
-benchmark/** linguist-vendored
-docs/* linguist-documentation
-etc/** linguist-vendored
-examples/** linguist-documentation
-scripts/** linguist-vendored
-test/** linguist-vendored
-tools/** linguist-vendored
-
-# Configure files which should *not* be included in GitHub language statistics:
-Makefile linguist-vendored
-*.mk linguist-vendored
-*.jl linguist-vendored
-*.py linguist-vendored
-*.R linguist-vendored
-
-# Configure files which should be included in GitHub language statistics:
-docs/types/*.d.ts -linguist-documentation
diff --git a/.github/.keepalive b/.github/.keepalive
deleted file mode 100644
index 7a5e8aa..0000000
--- a/.github/.keepalive
+++ /dev/null
@@ -1 +0,0 @@
-2025-07-21T00:40:31.874Z
diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md
deleted file mode 100644
index 3179324..0000000
--- a/.github/PULL_REQUEST_TEMPLATE.md
+++ /dev/null
@@ -1,7 +0,0 @@
-<!-- ----------^ Click "Preview"! -->
-
-We are excited about your pull request, but unfortunately we are not accepting pull requests against this repository, as all development happens on the [main project repository](https://github.com/stdlib-js/stdlib). We kindly request that you submit this pull request against the [respective directory](https://github.com/stdlib-js/stdlib/tree/develop/lib/node_modules/%40stdlib/fs/write-file) of the main repository where we’ll review and provide feedback. 
-
-If this is your first stdlib contribution, be sure to read the [contributing guide](https://github.com/stdlib-js/stdlib/blob/develop/CONTRIBUTING.md) which provides guidelines and instructions for submitting contributions. You may also consult the [development guide](https://github.com/stdlib-js/stdlib/blob/develop/docs/contributing/development.md) for help on developing stdlib.
-
-We look forward to receiving your contribution! :smiley:
\ No newline at end of file
diff --git a/.github/workflows/benchmark.yml b/.github/workflows/benchmark.yml
deleted file mode 100644
index e4f10fe..0000000
--- a/.github/workflows/benchmark.yml
+++ /dev/null
@@ -1,64 +0,0 @@
-#/
-# @license Apache-2.0
-#
-# Copyright (c) 2021 The Stdlib Authors.
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-#    http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#/
-
-# Workflow name:
-name: benchmark
-
-# Workflow triggers:
-on:
-  # Allow the workflow to be manually run:
-  workflow_dispatch:
-
-# Workflow jobs:
-jobs:
-
-  # Define a job to run benchmarks:
-  benchmark:
-
-    # Define a display name:
-    name: 'Run benchmarks'
-
-    # Define the type of virtual host machine:
-    runs-on: 'ubuntu-latest'
-
-    # Define the sequence of job steps...
-    steps:
-
-      # Checkout the repository:
-      - name: 'Checkout repository'
-        # Pin action to full length commit SHA
-        uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608 # v4.1.0
-
-      # Install Node.js:
-      - name: 'Install Node.js'
-        # Pin action to full length commit SHA
-        uses: actions/setup-node@b39b52d1213e96004bfcb1c61a8a6fa8ab84f3e8 # v4.0.1
-        with:
-          node-version: 20
-        timeout-minutes: 5
-
-      # Install dependencies:
-      - name: 'Install production and development dependencies'
-        run: |
-          npm install || npm install || npm install
-        timeout-minutes: 15
-
-      # Run benchmarks:
-      - name: 'Run benchmarks'
-        run: |
-          npm run benchmark
diff --git a/.github/workflows/cancel.yml b/.github/workflows/cancel.yml
deleted file mode 100644
index b5291db..0000000
--- a/.github/workflows/cancel.yml
+++ /dev/null
@@ -1,57 +0,0 @@
-#/
-# @license Apache-2.0
-#
-# Copyright (c) 2021 The Stdlib Authors.
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-#    http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#/
-
-# Workflow name:
-name: cancel
-
-# Workflow triggers:
-on:
-  # Allow the workflow to be manually run:
-  workflow_dispatch:
-
-# Workflow jobs:
-jobs:
-
-  # Define a job to cancel existing workflow runs:
-  cancel:
-
-    # Define a display name:
-    name: 'Cancel workflow runs'
-
-    # Define the type of virtual host machine:
-    runs-on: 'ubuntu-latest'
-
-    # Time limit:
-    timeout-minutes: 3
-
-    # Define the sequence of job steps...
-    steps:
-
-      # Cancel existing workflow runs:
-      - name: 'Cancel existing workflow runs'
-        # Pin action to full length commit SHA
-        uses: styfle/cancel-workflow-action@85880fa0301c86cca9da44039ee3bb12d3bedbfa # v0.12.1
-        with:
-          workflow_id: >-
-            benchmark.yml,
-            examples.yml,
-            test.yml,
-            test_coverage.yml,
-            test_install.yml,
-            publish.yml
-          access_token: ${{ github.token }}
diff --git a/.github/workflows/close_pull_requests.yml b/.github/workflows/close_pull_requests.yml
deleted file mode 100644
index b020e1a..0000000
--- a/.github/workflows/close_pull_requests.yml
+++ /dev/null
@@ -1,54 +0,0 @@
-#/
-# @license Apache-2.0
-#
-# Copyright (c) 2021 The Stdlib Authors.
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-#    http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#/
-
-# Workflow name:
-name: close_pull_requests
-
-# Workflow triggers:
-on:
-  pull_request_target:
-    types: [opened]
-
-# Workflow jobs:
-jobs:
-
-  # Define job to close all pull requests:
-  run:
-
-    # Define the type of virtual host machine on which to run the job:
-    runs-on: ubuntu-latest
-
-    # Define the sequence of job steps...
-    steps:
-
-      # Close pull request
-      - name: 'Close pull request'
-        # Pin action to full length commit SHA corresponding to v3.1.2
-        uses: superbrothers/close-pull-request@9c18513d320d7b2c7185fb93396d0c664d5d8448
-        with:
-          comment: |
-            Thank you for submitting a pull request. :raised_hands:
-            
-            We greatly appreciate your willingness to submit a contribution. However, we are not accepting pull requests against this repository, as all development happens on the [main project repository](https://github.com/stdlib-js/stdlib).
-            
-            We kindly request that you submit this pull request against the [respective directory](https://github.com/stdlib-js/stdlib/tree/develop/lib/node_modules/%40stdlib/fs/write-file) of the main repository where we’ll review and provide feedback. If this is your first stdlib contribution, be sure to read the [contributing guide](https://github.com/stdlib-js/stdlib/blob/develop/CONTRIBUTING.md) which provides guidelines and instructions for submitting contributions.
-            
-            Thank you again, and we look forward to receiving your contribution! :smiley:
-            
-            Best,
-            The stdlib team
\ No newline at end of file
diff --git a/.github/workflows/examples.yml b/.github/workflows/examples.yml
deleted file mode 100644
index 2984901..0000000
--- a/.github/workflows/examples.yml
+++ /dev/null
@@ -1,64 +0,0 @@
-#/
-# @license Apache-2.0
-#
-# Copyright (c) 2021 The Stdlib Authors.
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-#    http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#/
-
-# Workflow name:
-name: examples
-
-# Workflow triggers:
-on:
-  # Allow the workflow to be manually run:
-  workflow_dispatch:
-
-# Workflow jobs:
-jobs:
-
-  # Define a job to run the package examples...
-  examples:
-
-    # Define display name:
-    name: 'Run examples'
-
-    # Define the type of virtual host machine on which to run the job:
-    runs-on: ubuntu-latest
-
-    # Define the sequence of job steps...
-    steps:
-
-      # Checkout repository:
-      - name: 'Checkout repository'
-        # Pin action to full length commit SHA
-        uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608 # v4.1.0
-
-      # Install Node.js:
-      - name: 'Install Node.js'
-        # Pin action to full length commit SHA
-        uses: actions/setup-node@b39b52d1213e96004bfcb1c61a8a6fa8ab84f3e8 # v4.0.1
-        with:
-          node-version: 20
-        timeout-minutes: 5
-
-      # Install dependencies:
-      - name: 'Install production and development dependencies'
-        run: |
-          npm install || npm install || npm install
-        timeout-minutes: 15
-
-      # Run examples:
-      - name: 'Run examples'
-        run: |
-          npm run examples
diff --git a/.github/workflows/npm_downloads.yml b/.github/workflows/npm_downloads.yml
deleted file mode 100644
index 3b4d557..0000000
--- a/.github/workflows/npm_downloads.yml
+++ /dev/null
@@ -1,112 +0,0 @@
-#/
-# @license Apache-2.0
-#
-# Copyright (c) 2022 The Stdlib Authors.
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-#    http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#/
-
-# Workflow name:
-name: npm_downloads
-
-# Workflow triggers:
-on:
-  # Run this workflow weekly:
-  schedule:
-    # cron: '<minutes> <hours> <day_of_month> <month> <day_of_week>'
-    - cron: '22 10 * * 3'
-
-  # Allow the workflow to be manually run:
-  workflow_dispatch:
-
-# Workflow jobs:
-jobs:
-
-  # Define a job for retrieving npm download counts...
-  npm_downloads:
-
-    # Define display name:
-    name: 'Retrieve npm download counts'
-
-    # Define the type of virtual host machine on which to run the job:
-    runs-on: ubuntu-latest
-
-    # Define the sequence of job steps...
-    steps:
-      # Checkout the repository:
-      - name: 'Checkout repository'
-        # Pin action to full length commit SHA
-        uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608 # v4.1.0
-        timeout-minutes: 10
-
-      # Install Node.js:
-      - name: 'Install Node.js'
-        # Pin action to full length commit SHA
-        uses: actions/setup-node@b39b52d1213e96004bfcb1c61a8a6fa8ab84f3e8 # v4.0.1
-        with:
-          node-version: 20
-        timeout-minutes: 5
-
-      # Resolve package name:
-      - name: 'Resolve package name'
-        id: package_name
-        run: |
-          name=`node -e 'console.log(require("./package.json").name)' | tr -d '\n'`
-          echo "package_name=$name" >> $GITHUB_OUTPUT
-        timeout-minutes: 5
-
-      # Fetch download data:
-      - name: 'Fetch data'
-        id: download_data
-        run: |
-          url="https://api.npmjs.org/downloads/range/$(date --date='1 year ago' '+%Y-%m-%d'):$(date '+%Y-%m-%d')/${{ steps.package_name.outputs.package_name }}"
-          echo "$url"
-          data=$(curl "$url")
-          mkdir ./tmp
-          echo "$data" > ./tmp/npm_downloads.json
-          echo "data=$data" >> $GITHUB_OUTPUT
-        timeout-minutes: 5
-
-      # Print summary of download data:
-      - name: 'Print summary'
-        run: |
-          echo "| Date | Downloads  |" >> $GITHUB_STEP_SUMMARY
-          echo "|------|------------|" >> $GITHUB_STEP_SUMMARY
-          cat ./tmp/npm_downloads.json | jq -r ".downloads | .[-14:] | to_entries | map(\"| \(.value.day) | \(.value.downloads) |\")  |.[]" >> $GITHUB_STEP_SUMMARY
-
-      # Upload the download data:
-      - name: 'Upload data'
-        # Pin action to full length commit SHA
-        uses: actions/upload-artifact@5d5d22a31266ced268874388b861e4b58bb5c2f3 # v4.3.1
-        with:
-          # Define a name for the uploaded artifact (ensuring a unique name for each job):
-          name: npm_downloads
-
-          # Specify the path to the file to upload:
-          path: ./tmp/npm_downloads.json
-
-          # Specify the number of days to retain the artifact (default is 90 days):
-          retention-days: 90
-        timeout-minutes: 10
-        if: success()
-
-      # Send data to events server:
-      - name: 'Post data'
-        # Pin action to full length commit SHA
-        uses: distributhor/workflow-webhook@48a40b380ce4593b6a6676528cd005986ae56629 # v3.0.3
-        env:
-          webhook_url: ${{ secrets.STDLIB_NPM_DOWNLOADS_URL }}
-          webhook_secret: ${{ secrets.STDLIB_WEBHOOK_SECRET }}
-          data: '{ "downloads": ${{ steps.download_data.outputs.data }} }'
-        timeout-minutes: 5
-        if: success()
diff --git a/.github/workflows/productionize.yml b/.github/workflows/productionize.yml
deleted file mode 100644
index 663474a..0000000
--- a/.github/workflows/productionize.yml
+++ /dev/null
@@ -1,1008 +0,0 @@
-#/
-# @license Apache-2.0
-#
-# Copyright (c) 2022 The Stdlib Authors.
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-#    http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#/
-
-# Workflow name:
-name: productionize
-
-# Workflow triggers:
-on:
-  # Run workflow when a new commit is pushed to the main branch:
-  push:
-    branches:
-      - main
-
-  # Allow the workflow to be manually run:
-  workflow_dispatch:
-    inputs:
-      require-passing-tests:
-        description: 'Require passing tests for creating bundles'
-        type: boolean
-        default: true
-
-  # Run workflow upon completion of `publish` workflow run:
-  workflow_run:
-    workflows: ["publish"]
-    types: [completed]
-
-# Concurrency group to prevent multiple concurrent executions:
-concurrency:
-  group: productionize
-  cancel-in-progress: true
-
-# Workflow jobs:
-jobs:
-
-  # Define a job to create a production build...
-  productionize:
-
-    # Define display name:
-    name: 'Productionize'
-
-    # Define the type of virtual host machine:
-    runs-on: 'ubuntu-latest'
-
-    # Define the sequence of job steps...
-    steps:
-      # Checkout main branch of repository:
-      - name: 'Checkout main branch'
-        # Pin action to full length commit SHA
-        uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608 # v4.1.0
-        with:
-          ref: main
-
-      # Install Node.js:
-      - name: 'Install Node.js'
-        # Pin action to full length commit SHA
-        uses: actions/setup-node@b39b52d1213e96004bfcb1c61a8a6fa8ab84f3e8 # v4.0.1
-        with:
-          node-version: 20
-        timeout-minutes: 5
-
-      # Create production branch:
-      - name: 'Create production branch'
-        run: |
-          git checkout -b production
-
-      # Transform error messages:
-      - name: 'Transform error messages'
-        id: transform-error-messages
-        uses: stdlib-js/transform-errors-action@main
-
-      # Change `@stdlib/string-format` to `@stdlib/error-tools-fmtprodmsg` in package.json if the former is a dependency, otherwise insert it as a dependency:
-      - name: 'Update dependencies in package.json'
-        run: |
-          PKG_VERSION=$(npm view @stdlib/error-tools-fmtprodmsg version)
-          if grep -q '"@stdlib/string-format"' package.json; then
-            sed -i "s/\"@stdlib\/string-format\": \"^.*\"/\"@stdlib\/error-tools-fmtprodmsg\": \"^$PKG_VERSION\"/g" package.json
-          else
-            node -e "var pkg = require( './package.json' ); pkg.dependencies[ '@stdlib/error-tools-fmtprodmsg' ] = '^$PKG_VERSION'; require( 'fs' ).writeFileSync( 'package.json', JSON.stringify( pkg, null, 2 ) );"
-          fi
-
-      # Configure Git:
-      - name: 'Configure Git'
-        run: |
-          git config --local user.email "noreply@stdlib.io"
-          git config --local user.name "stdlib-bot"
-
-      # Commit changes:
-      - name: 'Commit changes'
-        run: |
-          git add -A
-          git commit -m "Transform error messages"
-
-      # Push changes:
-      - name: 'Push changes'
-        run: |
-          SLUG=${{ github.repository }}
-          echo "Pushing changes to $SLUG..."
-          git push "https://$GITHUB_ACTOR:$GITHUB_TOKEN@github.com/$SLUG.git" production --force
-
-  # Define a job for running tests of the productionized code...
-  test:
-
-    # Define a display name:
-    name: 'Run Tests'
-
-    # Define the type of virtual host machine:
-    runs-on: 'ubuntu-latest'
-
-    # Indicate that this job depends on the prior job finishing:
-    needs: productionize
-
-    # Run this job regardless of the outcome of the prior job:
-    if: always()
-
-    # Define the sequence of job steps...
-    steps:
-
-      # Checkout the repository:
-      - name: 'Checkout repository'
-        if: ${{ github.event.inputs.require-passing-tests == 'true' }}
-        # Pin action to full length commit SHA
-        uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608 # v4.1.0
-        with:
-          # Use the `production` branch:
-          ref: production
-
-      # Install Node.js:
-      - name: 'Install Node.js'
-        if: ${{ github.event.inputs.require-passing-tests == 'true' }}
-        # Pin action to full length commit SHA
-        uses: actions/setup-node@b39b52d1213e96004bfcb1c61a8a6fa8ab84f3e8 # v4.0.1
-        with:
-          node-version: 20
-        timeout-minutes: 5
-
-      # Install dependencies:
-      - name: 'Install production and development dependencies'
-        if: ${{ github.event.inputs.require-passing-tests == 'true' }}
-        id: install
-        run: |
-          npm install || npm install || npm install
-        timeout-minutes: 15
-
-      # Build native add-on if present:
-      - name: 'Build native add-on (if present)'
-        if: ${{ github.event.inputs.require-passing-tests == 'true' }}
-        run: |
-          if [ -f "binding.gyp" ]; then
-            npm install node-gyp --no-save && ./node_modules/.bin/node-gyp rebuild
-          fi
-
-      # Run tests:
-      - name: 'Run tests'
-        if: ${{ github.event.inputs.require-passing-tests == 'true' }}
-        id: tests
-        run: |
-          npm test || npm test || npm test
-
-  # Define job to create a bundle for use in Deno...
-  deno:
-
-    # Define display name:
-    name: 'Create Deno bundle'
-
-    # Define the type of virtual host machine on which to run the job:
-    runs-on: ubuntu-latest
-
-    # Indicate that this job depends on the test job finishing:
-    needs: test
-
-    # Define the sequence of job steps...
-    steps:
-      # Checkout the repository:
-      - name: 'Checkout repository'
-        # Pin action to full length commit SHA
-        uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608 # v4.1.0
-
-      # Configure Git:
-      - name: 'Configure Git'
-        run: |
-          git config --local user.email "noreply@stdlib.io"
-          git config --local user.name "stdlib-bot"
-
-      # Check if remote `deno` branch exists:
-      - name: 'Check if remote `deno` branch exists'
-        id: deno-branch-exists
-        continue-on-error: true
-        run: |
-          git fetch --all
-          git ls-remote --exit-code --heads origin deno
-          if [ $? -eq 0 ]; then
-            echo "remote-exists=true" >> $GITHUB_OUTPUT
-          else
-            echo "remote-exists=false" >> $GITHUB_OUTPUT
-          fi
-
-      # If `deno` exists, delete everything in branch and merge `production` into it
-      - name: 'If `deno` exists, delete everything in branch and merge `production` into it'
-        if: steps.deno-branch-exists.outputs.remote-exists
-        run: |
-          git checkout -b deno origin/deno
-
-          find . -type 'f' | grep -v -e ".git/" -e "package.json" -e "README.md" -e "LICENSE"  -e "CONTRIBUTORS" -e "NOTICE" | xargs -r rm
-          find . -mindepth 1 -type 'd' | grep -v -e ".git" | xargs -r rm -rf
-
-          git add -A
-          git commit -m "Remove files" --allow-empty
-
-          git config merge.theirs.name 'simulate `-s theirs`'
-          git config merge.theirs.driver 'cat %B > %A'
-          GIT_CONFIG_PARAMETERS="'merge.default=theirs'" git merge origin/production --allow-unrelated-histories
-
-          # Copy files from `production` branch if necessary:
-          git checkout origin/production -- .
-          if [ -n "$(git status --porcelain)" ]; then
-            git add -A
-            git commit -m "Auto-generated commit"
-          fi
-
-      # If `deno` does not exist, create `deno` branch:
-      - name: 'If `deno` does not exist, create `deno` branch'
-        if: ${{ steps.deno-branch-exists.outputs.remote-exists == false }}
-        run: |
-          git checkout production
-          git checkout -b deno
-
-      # Copy files to deno directory:
-      - name: 'Copy files to deno directory'
-        run: |
-          mkdir -p deno
-          cp README.md LICENSE CONTRIBUTORS NOTICE ./deno
-
-          # Copy TypeScript definitions to deno directory:
-          if [ -d index.d.ts ]; then
-            cp index.d.ts ./deno/index.d.ts
-          fi
-          if [ -e ./docs/types/index.d.ts ]; then
-            cp ./docs/types/index.d.ts ./deno/mod.d.ts
-          fi
-
-      # Install Node.js:
-      - name: 'Install Node.js'
-        # Pin action to full length commit SHA
-        uses: actions/setup-node@b39b52d1213e96004bfcb1c61a8a6fa8ab84f3e8 # v4.0.1
-        with:
-          node-version: 20
-        timeout-minutes: 5
-
-      # Install dependencies:
-      - name: Install production and development dependencies
-        id: install
-        run: |
-          npm install || npm install || npm install
-        timeout-minutes: 15
-
-      # Bundle package for use in Deno:
-      - name: 'Bundle package for Deno'
-        id: deno-bundle
-        uses: stdlib-js/bundle-action@main
-        with:
-          target: 'deno'
-
-      # Rewrite file contents:
-      - name: 'Rewrite file contents'
-        run: |
-          # Replace links to other packages with links to the deno branch:
-          find ./deno -type f -name '*.md' -print0 | xargs -0 sed -Ei "/\/tree\/main/b; /^\[@stdlib[^:]+: https:\/\/github.com\/stdlib-js\// s/(.*)/\\1\/tree\/deno/";
-
-          # Replace reference to `@stdlib/types` with CDN link:
-          find ./deno -type f -name '*.ts' -print0 | xargs -0 sed -Ei "s/\/\/\/ <reference types=\"@stdlib\/types\"\/>/\/\/\/ <reference types=\"https:\/\/cdn.jsdelivr.net\/gh\/stdlib-js\/types@main\/index.d.ts\"\/>/g"
-
-          # Change wording of project description to avoid reference to JavaScript and Node.js:
-          find ./deno -type f -name '*.md' -print0 | xargs -0 sed -Ei "s/a standard library for JavaScript and Node.js, /a standard library /g"
-
-          # Rewrite all `require()`s to use jsDelivr links:
-          find ./deno -type f -name '*.md' -print0 | xargs -0 sed -Ei "/require\( '@stdlib\// {
-              s/(var|let|const)\s+([a-z0-9_]+)\s+=\s*require\( '([^']+)' \);/import \2 from \'\3\';/i
-              s/@stdlib/https:\/\/cdn.jsdelivr.net\/gh\/stdlib-js/
-              s/';/@deno\/mod.js';/
-          }"
-
-          # Rewrite first `import` to show importing of named exports if available:
-          exports=$(cat lib/index.js | \
-            grep -E 'setReadOnly\(.*,.*,.*\)' | \
-            sed -E 's/setReadOnly\((.*),(.*),(.*)\);/\2/' | \
-            sed -E "s/'//g" | \
-            sort)
-          if [ -n "$exports" ]; then
-            find ./deno -type f -name '*.md' -print0 | xargs -0 perl -0777 -i -pe "s/\`\`\`javascript\nimport\s+([a-zA-Z0-9_]+)\s+from\s*'([^']+)';\n\`\`\`/\`\`\`javascript\nimport \1 from '\2';\n\`\`\`\n\nYou can also import the following named exports from the package:\n\n\`\`\`javascript\nimport { $(echo $exports | sed -E 's/ /, /g') } from '\2';\n\`\`\`/"
-          fi
-
-          # Remove `installation`, `cli`, and `c` sections:
-          find ./deno -type f -name '*.md' -print0 | xargs -0 perl -0777 -i -pe "s/<section class=\"installation\">[^<]+<\/section>//g;"
-          find ./deno -type f -name '*.md' -print0 | xargs -0 perl -0777 -i -pe "s/(\* \* \*\n+)?<section class=\"cli\">[\s\S]+<\!\-\- \/.cli \-\->//g"
-          find ./deno -type f -name '*.md' -print0 | xargs -0 perl -0777 -i -pe "s/(\* \* \*\n+)?<section class=\"c\">[\s\S]+<\!\-\- \/.c \-\->//g"
-
-          # Create package.json file for deno branch:
-          jq --indent 2 '{"name": .name, "version": .version, "description": .description, "license": .license, "type": "module", "main": "./mod.js", "homepage": .homepage, "repository": .repository, "bugs": .bugs, "keywords": .keywords, "funding": .funding}' package.json > ./deno/package.json
-
-      # Delete everything in current directory aside from deno folder:
-      - name: 'Delete everything in current directory aside from deno folder'
-        run: |
-          find . -type 'f' | grep -v -e "deno" -e ".git/" | xargs -r rm
-          find . -mindepth 1 -type 'd' | grep -v -e "deno" -e ".git" | xargs -r rm -rf
-
-      # Move deno directory to root:
-      - name: 'Move deno directory to root'
-        run: |
-          mv ./deno/* .
-          rmdir ./deno
-
-      # Commit changes:
-      - name: 'Commit changes'
-        run: |
-          git add -A
-          git commit -m "Auto-generated commit"
-
-      # Push changes to `deno` branch:
-      - name: 'Push changes to `deno` branch'
-        run: |
-          SLUG=${{ github.repository }}
-          echo "Pushing changes to $SLUG..."
-          git push "https://$GITHUB_ACTOR:$GITHUB_TOKEN@github.com/$SLUG.git" deno
-
-      # Send status to Slack channel if job fails:
-      - name: 'Send status to Slack channel in case of failure'
-        # Pin action to full length commit SHA
-        uses: 8398a7/action-slack@28ba43ae48961b90635b50953d216767a6bea486 # v3.16.2
-        with:
-          status: ${{ job.status }}
-          channel: '#npm-ci'
-        if: failure()
-
-  # Define job to create a UMD bundle...
-  umd:
-
-    # Define display name:
-    name: 'Create UMD bundle'
-
-    # Define the type of virtual host machine on which to run the job:
-    runs-on: ubuntu-latest
-
-    # Indicate that this job depends on the test job finishing:
-    needs: test
-
-    # Define the sequence of job steps...
-    steps:
-      # Checkout the repository:
-      - name: 'Checkout repository'
-        # Pin action to full length commit SHA
-        uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608 # v4.1.0
-
-      # Configure Git:
-      - name: 'Configure Git'
-        run: |
-          git config --local user.email "noreply@stdlib.io"
-          git config --local user.name "stdlib-bot"
-
-      # Check if remote `umd` branch exists:
-      - name: 'Check if remote `umd` branch exists'
-        id: umd-branch-exists
-        continue-on-error: true
-        run: |
-          git fetch --all
-          git ls-remote --exit-code --heads origin umd
-          if [ $? -eq 0 ]; then
-            echo "remote-exists=true" >> $GITHUB_OUTPUT
-          else
-            echo "remote-exists=false" >> $GITHUB_OUTPUT
-          fi
-
-      # If `umd` exists, delete everything in branch and merge `production` into it
-      - name: 'If `umd` exists, delete everything in branch and merge `production` into it'
-        if: steps.umd-branch-exists.outputs.remote-exists
-        run: |
-          git checkout -b umd origin/umd
-
-          find . -type 'f' | grep -v -e ".git/" -e "package.json" -e "README.md" -e "LICENSE"  -e "CONTRIBUTORS" -e "NOTICE" | xargs -r rm
-          find . -mindepth 1 -type 'd' | grep -v -e ".git" | xargs -r rm -rf
-
-          git add -A
-          git commit -m "Remove files" --allow-empty
-
-          git config merge.theirs.name 'simulate `-s theirs`'
-          git config merge.theirs.driver 'cat %B > %A'
-          GIT_CONFIG_PARAMETERS="'merge.default=theirs'" git merge origin/production --allow-unrelated-histories
-
-          # Copy files from `production` branch if necessary:
-          git checkout origin/production -- .
-          if [ -n "$(git status --porcelain)" ]; then
-            git add -A
-            git commit -m "Auto-generated commit"
-          fi
-
-      # If `umd` does not exist, create `umd` branch:
-      - name: 'If `umd` does not exist, create `umd` branch'
-        if: ${{ steps.umd-branch-exists.outputs.remote-exists == false }}
-        run: |
-          git checkout production
-          git checkout -b umd
-
-      # Copy files to umd directory:
-      - name: 'Copy files to umd directory'
-        run: |
-          mkdir -p umd
-          cp README.md LICENSE CONTRIBUTORS NOTICE ./umd
-
-      # Install Node.js
-      - name: 'Install Node.js'
-        # Pin action to full length commit SHA
-        uses: actions/setup-node@b39b52d1213e96004bfcb1c61a8a6fa8ab84f3e8 # v4.0.1
-        with:
-          node-version: 20
-        timeout-minutes: 5
-
-      # Install dependencies:
-      - name: 'Install production and development dependencies'
-        id: install
-        run: |
-          npm install || npm install || npm install
-        timeout-minutes: 15
-
-      # Extract alias:
-      - name: 'Extract alias'
-        id: extract-alias
-        run: |
-          alias=$(grep -E 'require\(' README.md | head -n 1 |  sed -E 's/^var ([a-zA-Z0-9_]+) = .+/\1/')
-          echo "alias=${alias}" >> $GITHUB_OUTPUT
-
-      # Create Universal Module Definition (UMD) Node.js bundle:
-      - name: 'Create Universal Module Definition (UMD) Node.js bundle'
-        id: umd-bundle-node
-        uses: stdlib-js/bundle-action@main
-        with:
-          target: 'umd-node'
-          alias: ${{ steps.extract-alias.outputs.alias }}
-
-      # Create Universal Module Definition (UMD) browser bundle:
-      - name: 'Create Universal Module Definition (UMD) browser bundle'
-        id: umd-bundle-browser
-        uses: stdlib-js/bundle-action@main
-        with:
-          target: 'umd-browser'
-          alias: ${{ steps.extract-alias.outputs.alias }}
-
-      # Rewrite file contents:
-      - name: 'Rewrite file contents'
-        run: |
-          # Replace links to other packages with links to the umd branch:
-          find ./umd -type f -name '*.md' -print0 | xargs -0 sed -Ei "/\/tree\/main/b; /^\[@stdlib[^:]+: https:\/\/github.com\/stdlib-js\// s/(.*)/\\1\/tree\/umd/";
-
-          # Remove `installation`, `cli`, and `c` sections:
-          find ./umd -type f -name '*.md' -print0 | xargs -0 perl -0777 -i -pe "s/<section class=\"installation\">[^<]+<\/section>//g;"
-          find ./umd -type f -name '*.md' -print0 | xargs -0 perl -0777 -i -pe "s/(\* \* \*\n+)?<section class=\"cli\">[\s\S]+<\!\-\- \/.cli \-\->//g"
-          find ./umd -type f -name '*.md' -print0 | xargs -0 perl -0777 -i -pe "s/(\* \* \*\n+)?<section class=\"c\">[\s\S]+<\!\-\- \/.c \-\->//g"
-
-          # Rewrite first `require()` to show consumption of the UMD bundle in Observable and via a `script` tag:
-          find ./umd -type f -name '*.md' -print0 | xargs -0 perl -0777 -i -pe "s/\`\`\`javascript\n(var|let|const)\s+([a-zA-Z0-9_]+)\s+=\s*require\( '\@stdlib\/([^']+)' \);\n\`\`\`/To use in Observable,\n\n\`\`\`javascript\n\2 = require\( 'https:\/\/cdn.jsdelivr.net\/gh\/stdlib-js\/\3\@umd\/browser.js' \)\n\`\`\`\n\nTo vendor stdlib functionality and avoid installing dependency trees for Node.js, you can use the UMD server build:\n\n\`\`\`javascript\nvar \2 = require\( 'path\/to\/vendor\/umd\/\3\/index.js' \)\n\`\`\`\n\nTo include the bundle in a webpage,\n\n\`\`\`html\n<script type=\"text\/javascript\" src=\"https:\/\/cdn.jsdelivr.net\/gh\/stdlib-js\/\3\@umd\/browser.js\"><\/script>\n\`\`\`\n\nIf no recognized module system is present, access bundle contents via the global scope:\n\n\`\`\`html\n<script type=\"text\/javascript\">\n    window.\2;\n<\/script>\n\`\`\`/"
-
-          # Rewrite examples section to be a HTML file:
-          find ./umd -type f -name '*.md' -print0 | xargs -0 perl -0777 -i -pe "s/\#\# Examples([\s\S]*)\`\`\`javascript([\s\S]+?)\`\`\`/\#\# Examples\1\`\`\`html\n<\!DOCTYPE html>\n<html lang=\"en\">\n<body>\n<script type=\"text\/javascript\">\2\n<\/script>\n<\/body>\n<\/html>\n\`\`\`/"
-
-          # Rewrite all `require()`s in the examples section as `script` tags loading the respective UMD bundle:
-          find ./umd -type f -name '*.md' -print0 | xargs -0 perl -0777 -i -pe "1 while s/<script type=\"text\/javascript\">\n(var|let|const)\s+([a-zA-Z0-9_]+)\s+=\s*require\( '\@stdlib\/([^']+)' \);?/<script type=\"text\/javascript\" src=\"https:\/\/cdn.jsdelivr.net\/gh\/stdlib-js\/\3\@umd\/browser.js\"><\/script>\n<script type=\"text\/javascript\">/g"
-
-          # Wrap contents of `<script type="text/javascript">` tag contents in an IIFE:
-          find ./umd -type f -name '*.md' -print0 | xargs -0 perl -0777 -i -pe "s/<script type=\"text\/javascript\">([\s\S]+?)<\/script>/<script type=\"text\/javascript\">\n\(function \(\) {\1}\)\(\);\n<\/script>/g"
-
-          # Create package.json file for umd branch:
-          jq --indent 2 '{"name": .name, "version": .version, "description": .description, "license": .license, "main": "./index.js", "homepage": .homepage, "repository": .repository, "bugs": .bugs, "keywords": .keywords, "funding": .funding}' package.json > ./umd/package.json
-
-      # Delete everything in current directory aside from umd folder:
-      - name: 'Delete everything in current directory aside from umd folder'
-        run: |
-          find . -type 'f' | grep -v -e "umd" -e ".git/" | xargs -r rm
-          find . -mindepth 1 -type 'd' | grep -v -e "umd" -e ".git" | xargs -r rm -rf
-
-      # Move umd directory to root:
-      - name: 'Move umd directory to root'
-        run: |
-          mv ./umd/* .
-          rmdir ./umd
-
-      # Commit changes:
-      - name: 'Commit changes'
-        run: |
-          git add -A
-          git commit -m "Auto-generated commit"
-
-      # Push changes to `umd` branch:
-      - name: 'Push changes to `umd` branch'
-        run: |
-          SLUG=${{ github.repository }}
-          echo "Pushing changes to $SLUG..."
-          git push "https://$GITHUB_ACTOR:$GITHUB_TOKEN@github.com/$SLUG.git" umd
-
-      # Send status to Slack channel if job fails:
-      - name: 'Send status to Slack channel in case of failure'
-        # Pin action to full length commit SHA
-        uses: 8398a7/action-slack@28ba43ae48961b90635b50953d216767a6bea486 # v3.16.2
-        with:
-          status: ${{ job.status }}
-          channel: '#npm-ci'
-        if: failure()
-
-  # Define job to create ES module build...
-  esm:
-
-    # Define display name:
-    name: 'Create ES module build'
-
-    # Define the type of virtual host machine on which to run the job:
-    runs-on: ubuntu-latest
-
-    # Indicate that this job depends on the test job finishing:
-    needs: test
-
-    # Define the sequence of job steps...
-    steps:
-      # Checkout the repository:
-      - name: 'Checkout repository'
-        # Pin action to full length commit SHA
-        uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608 # v4.1.0
-
-      # Configure Git:
-      - name: 'Configure Git'
-        run: |
-          git config --local user.email "noreply@stdlib.io"
-          git config --local user.name "stdlib-bot"
-
-      # Check if remote `esm` branch exists:
-      - name: 'Check if remote `esm` branch exists'
-        id: esm-branch-exists
-        continue-on-error: true
-        run: |
-          git fetch --all
-          git ls-remote --exit-code --heads origin esm
-          if [ $? -eq 0 ]; then
-            echo "remote-exists=true" >> $GITHUB_OUTPUT
-          else
-            echo "remote-exists=false" >> $GITHUB_OUTPUT
-          fi
-
-      # If `esm` exists, delete everything in branch and merge `production` into it
-      - name: 'If `esm` exists, delete everything in branch and merge `production` into it'
-        if: steps.esm-branch-exists.outputs.remote-exists
-        run: |
-          git checkout -b esm origin/esm
-
-          find . -type 'f' | grep -v -e ".git/" -e "package.json" -e "README.md" -e "LICENSE"  -e "CONTRIBUTORS" -e "NOTICE" | xargs -r rm
-          find . -mindepth 1 -type 'd' | grep -v -e ".git" | xargs -r rm -rf
-
-          git add -A
-          git commit -m "Remove files" --allow-empty
-
-          git config merge.theirs.name 'simulate `-s theirs`'
-          git config merge.theirs.driver 'cat %B > %A'
-          GIT_CONFIG_PARAMETERS="'merge.default=theirs'" git merge origin/production --allow-unrelated-histories
-
-          # Copy files from `production` branch if necessary:
-          git checkout origin/production -- .
-          if [ -n "$(git status --porcelain)" ]; then
-            git add -A
-            git commit -m "Auto-generated commit"
-          fi
-
-      # If `esm` does not exist, create `esm` branch:
-      - name: 'If `esm` does not exist, create `esm` branch'
-        if: ${{ steps.esm-branch-exists.outputs.remote-exists == false }}
-        run: |
-          git checkout production
-          git checkout -b esm
-
-      # Copy files to esm directory:
-      - name: 'Copy files to esm directory'
-        run: |
-          mkdir -p esm
-          cp README.md LICENSE CONTRIBUTORS NOTICE ./esm
-
-          # Copy TypeScript definitions to esm directory:
-          if [ -e ./docs/types/index.d.ts ]; then
-            cp ./docs/types/index.d.ts ./esm/index.d.ts
-          fi
-          if [ -d index.d.ts ]; then
-            cp index.d.ts ./esm/index.d.ts
-          fi
-
-      # Install Node.js:
-      - name: 'Install Node.js'
-        # Pin action to full length commit SHA
-        uses: actions/setup-node@b39b52d1213e96004bfcb1c61a8a6fa8ab84f3e8 # v4.0.1
-        with:
-          node-version: 20
-        timeout-minutes: 5
-
-      # Install dependencies:
-      - name: 'Install production and development dependencies'
-        id: install
-        run: |
-          npm install || npm install || npm install
-        timeout-minutes: 15
-
-      # Create ES Module (ESM) bundle:
-      - name: 'Create ES Module (ESM) bundle'
-        id: esm-bundle
-        uses: stdlib-js/bundle-action@main
-        with:
-          target: 'esm'
-
-      # Rewrite file contents:
-      - name: 'Rewrite file contents'
-        run: |
-          # Replace links to other packages with links to the esm branch:
-          find ./esm -type f -name '*.md' -print0 | xargs -0 sed -Ei "/\/tree\/main/b; /^\[@stdlib[^:]+: https:\/\/github.com\/stdlib-js\// s/(.*)/\\1\/tree\/esm/";
-
-          # Replace reference to `@stdlib/types` with esm link:
-          find ./esm -type f -name '*.ts' -print0 | xargs -0 sed -Ei "s/\/\/\/ <reference types=\"@stdlib\/types\"\/>/\/\/\/ <reference types=\"https:\/\/cdn.jsdelivr.net\/gh\/stdlib-js\/types@esm\/index.d.ts\"\/>/g"
-
-          # Change wording of project description to avoid reference to JavaScript and Node.js:
-          find ./esm -type f -name '*.md' -print0 | xargs -0 sed -Ei "s/a standard library for JavaScript and Node.js, /a standard library /g"
-
-          # Rewrite all `require()`s to use jsDelivr links:
-          find ./esm -type f -name '*.md' -print0 | xargs -0 sed -Ei "/require\( '@stdlib\// {
-              s/(var|let|const)\s+([a-z0-9_]+)\s+=\s*require\( '([^']+)' \);/import \2 from \'\3\';/i
-              s/@stdlib/https:\/\/cdn.jsdelivr.net\/gh\/stdlib-js/
-              s/';/@esm\/index.mjs';/
-          }"
-
-          # Rewrite first `import` to show importing of named exports if available:
-          exports=$(cat lib/index.js | \
-            grep -E 'setReadOnly\(.*,.*,.*\)' | \
-            sed -E 's/setReadOnly\((.*),(.*),(.*)\);/\2/' | \
-            sed -E "s/'//g" | \
-            sort)
-          if [ -n "$exports" ]; then
-            find ./esm -type f -name '*.md' -print0 | xargs -0 perl -0777 -i -pe "s/\`\`\`javascript\nimport\s+([a-zA-Z0-9_]+)\s+from\s*'([^']+)';\n\`\`\`/\`\`\`javascript\nimport \1 from '\2';\n\`\`\`\n\nYou can also import the following named exports from the package:\n\n\`\`\`javascript\nimport { $(echo $exports | sed -E 's/ /, /g') } from '\2';\n\`\`\`/"
-          fi
-
-          # Remove `installation`, `cli`, and `c` sections:
-          find ./esm -type f -name '*.md' -print0 | xargs -0 perl -0777 -i -pe "s/<section class=\"installation\">[^<]+<\/section>//g;"
-          find ./esm -type f -name '*.md' -print0 | xargs -0 perl -0777 -i -pe "s/(\* \* \*\n+)?<section class=\"cli\">[\s\S]+<\!\-\- \/.cli \-\->//g"
-          find ./esm -type f -name '*.md' -print0 | xargs -0 perl -0777 -i -pe "s/(\* \* \*\n+)?<section class=\"c\">[\s\S]+<\!\-\- \/.c \-\->//g"
-
-          # Rewrite examples section to be a HTML file:
-          find ./esm -type f -name '*.md' -print0 | xargs -0 perl -0777 -i -pe "s/\#\# Examples([\s\S]*)\`\`\`javascript([\s\S]+?)\`\`\`/\#\# Examples\1\`\`\`html\n<\!DOCTYPE html>\n<html lang=\"en\">\n<body>\n<script type=\"module\">\n\2\n<\/script>\n<\/body>\n<\/html>\n\`\`\`/g"
-
-          # Create package.json file for esm branch:
-          jq --indent 2 '{"name": .name, "version": .version, "description": .description, "license": .license, "type": "module", "main": "./index.mjs", "homepage": .homepage, "repository": .repository, "bugs": .bugs, "keywords": .keywords, "funding": .funding}' package.json > ./esm/package.json
-
-      # Delete everything in current directory aside from esm folder:
-      - name: 'Delete everything in current directory aside from esm folder'
-        run: |
-          find . -type 'f' | grep -v -e "esm" -e ".git/" | xargs -r rm
-          find . -mindepth 1 -type 'd' | grep -v -e "esm" -e ".git" | xargs -r rm -rf
-
-      # Move esm directory to root:
-      - name: 'Move esm directory to root'
-        run: |
-          mv ./esm/* .
-          rmdir ./esm
-
-      # Commit changes:
-      - name: 'Commit changes'
-        run: |
-          git add -A
-          git commit -m "Auto-generated commit"
-
-      # Push changes to `esm` branch:
-      - name: 'Push changes to `esm` branch'
-        run: |
-          SLUG=${{ github.repository }}
-          echo "Pushing changes to $SLUG..."
-          git push "https://$GITHUB_ACTOR:$GITHUB_TOKEN@github.com/$SLUG.git" esm
-
-      # Send status to Slack channel if job fails:
-      - name: 'Send status to Slack channel in case of failure'
-        # Pin action to full length commit SHA
-        uses: 8398a7/action-slack@28ba43ae48961b90635b50953d216767a6bea486 # v3.16.2
-        with:
-          status: ${{ job.status }}
-          channel: '#npm-ci'
-        if: failure()
-
-  # Define job to create CLI branch:
-  cli:
-
-    # Define display name:
-    name: 'Create CLI branch'
-
-    # Define the type of virtual host machine on which to run the job:
-    runs-on: ubuntu-latest
-
-    # Indicate that this job depends on the test job finishing:
-    needs: test
-
-    # Define the sequence of job steps...
-    steps:
-      # Checkout the repository:
-      - name: 'Checkout repository'
-        # Pin action to full length commit SHA
-        uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608 # v4.1.0
-
-      # Configure Git:
-      - name: 'Configure Git'
-        run: |
-          git config --local user.email "noreply@stdlib.io"
-          git config --local user.name "stdlib-bot"
-
-      # Check if remote `cli` branch exists:
-      - name: 'Check if remote `cli` branch exists'
-        id: cli-branch-exists
-        continue-on-error: true
-        run: |
-          git fetch --all
-          git ls-remote --exit-code --heads origin cli
-          if [ $? -eq 0 ]; then
-            echo "remote-exists=true" >> $GITHUB_OUTPUT
-          else
-            echo "remote-exists=false" >> $GITHUB_OUTPUT
-          fi
-
-      # If `cli` exists, delete everything in branch and merge `production` into it
-      - name: 'If `cli` exists, delete everything in branch and merge `production` into it'
-        if: steps.cli-branch-exists.outputs.remote-exists
-        run: |
-          git checkout -b cli origin/cli
-
-          find . -type 'f' | grep -v -e ".git/" -e "package.json" -e "README.md" -e "LICENSE"  -e "CONTRIBUTORS" -e "NOTICE" | xargs -r rm
-          find . -mindepth 1 -type 'd' | grep -v -e ".git" | xargs -r rm -rf
-
-          git add -A
-          git commit -m "Remove files" --allow-empty
-
-          git config merge.theirs.name 'simulate `-s theirs`'
-          git config merge.theirs.driver 'cat %B > %A'
-          GIT_CONFIG_PARAMETERS="'merge.default=theirs'" git merge origin/production --allow-unrelated-histories
-
-          # Copy files from `production` branch if necessary:
-          git checkout origin/production -- .
-          if [ -n "$(git status --porcelain)" ]; then
-            git add -A
-            git commit -m "Auto-generated commit"
-          fi
-
-      # If `cli` does not exist, create `cli` branch:
-      - name: 'If `cli` does not exist, create `cli` branch'
-        if: ${{ steps.cli-branch-exists.outputs.remote-exists == false }}
-        run: |
-          git checkout production
-          git checkout -b cli
-
-      # Copy files to `cli` directory:
-      - name: 'Copy files to `cli` directory'
-        run: |
-          mkdir -p cli
-          mkdir -p cli/docs cli/test
-          cp README.md LICENSE CONTRIBUTORS NOTICE .npmignore ./cli
-          cp -r bin etc ./cli
-          if [ -e "test/test.cli.js" ]; then
-            cp test/test.cli.js ./cli/test
-          fi
-          if [ -d "test/fixtures" ]; then
-            cp -r test/fixtures ./cli/test
-          fi
-          cp docs/usage.txt ./cli/docs
-
-      # Install Node.js:
-      - name: 'Install Node.js'
-        # Pin action to full length commit SHA
-        uses: actions/setup-node@b39b52d1213e96004bfcb1c61a8a6fa8ab84f3e8 # v4.0.1
-        with:
-          node-version: 20
-        timeout-minutes: 5
-
-      # Install dependencies:
-      - name: 'Install production and development dependencies'
-        id: install
-        run: |
-          npm install || npm install || npm install
-        timeout-minutes: 15
-
-      # Rewrite file contents:
-      - name: 'Rewrite file contents'
-        run: |
-          # Define variable for package name:
-          pkg="$(jq -r '.name' ./package.json)"
-          escapedPkg=$(echo "$pkg" | sed -e 's/\//\\\//g')
-          escapedPkg=$(echo "$escapedPkg" | sed -e 's/\@/\\\@/g')
-
-          # Define variable for package description:
-          pkgDescription="$(jq -r '.description' ./package.json)"
-          pkgDescription="$(echo "$pkgDescription" | sed -e 's/^\([A-Z]\)/\L\1/')"
-
-          # Remove sections:
-          find ./cli -type f -name '*.md' -print0 | xargs -0 perl -0777 -i -pe "s/<section class=\"installation\">[^<]+<\/section>//;"
-          find ./cli -type f -name '*.md' -print0 | xargs -0 perl -0777 -i -pe "s/(\* \* \*\n+)?<section class=\"usage\">[\s\S]+?<\!\-\- \/.usage \-\->//"
-          find ./cli -type f -name '*.md' -print0 | xargs -0 perl -0777 -i -pe "s/(\* \* \*\n+)?<section class=\"notes\">[\s\S]+?<\!\-\- \/.notes \-\->//"
-          find ./cli -type f -name '*.md' -print0 | xargs -0 perl -0777 -i -pe "s/(\* \* \*\n+)?<section class=\"examples\">[\s\S]+?<\!\-\- \/.examples \-\->//"
-          find ./cli -type f -name '*.md' -print0 | xargs -0 perl -0777 -i -pe "s/(\* \* \*\n+)?<section class=\"c\">[\s\S]+?<\!\-\- \/.c \-\->//g"
-
-          # Remove first horizontal rule * * *:
-          find ./cli -type f -name '*.md' -print0 | xargs -0 perl -0777 -i -pe "s/(\* \* \*)//"
-
-          # Remove ## CLI heading:
-          find ./cli -type f -name '*.md' -print0 | xargs -0 perl -0777 -i -pe "s/## CLI//"
-
-          # Change heading levels:
-          find ./cli -type f -name '*.md' -print0 | xargs -0 perl -0777 -i -pe "s/###/##/g"
-
-          # Append -cli to package name unless it already ends with -cli:
-          find ./cli -type f -name '*.md' -print0 | xargs -0 perl -0777 -i -pe "s/(?<!\[)($escapedPkg)(?!-cli)/\1-cli/g"
-
-          # Insert a link to the main package:
-          find ./cli -type f -name '*.md' -print0 | xargs -0 perl -0777 -i -pe "s/<section class=\"related\">(?:\n\n\* \* \*\n\n## See Also\n\n)?/<section class=\"related\">\n\n## See Also\n\n-   <span class=\"package-name\">[\`$escapedPkg\`][$escapedPkg]<\/span><span class=\"delimiter\">: <\/span><span class=\"description\">$pkgDescription<\/span>\n/"
-
-          # Create package.json file for cli branch:
-          jq --indent 2 '.name = .name + "-cli" | {"name": .name, "version": .version, "description": .description, "license": .license, "author": .author, "contributors": .contributors, "bin": .bin, "homepage": .homepage, "repository": .repository, "bugs": .bugs, "dependencies": .dependencies, "devDependencies": .devDependencies, "keywords": .keywords, "funding": .funding}' package.json > ./cli/package.json
-
-          # Add implementation package as dependency:
-          version=$(npm view "$pkg" version)
-          jq --indent 2 ".dependencies[\"$pkg\"] = \"$version\"" ./cli/package.json > ./cli/package.json.tmp
-          mv ./cli/package.json.tmp ./cli/package.json
-
-          # Rewrite require of main module in bin/cli to depend on external package:
-          perl -0777 -i -pe "s/require\( \'\.\/\.\.\/lib\' \)/require\( \'$escapedPkg\' \)/" ./cli/bin/cli
-
-          # For all dependencies, check if they are required by the CLI; if not, remove them:
-          jq -r '.dependencies | keys[]' ./cli/package.json | while read -r dep; do
-            dep=$(echo "$dep" | xargs)
-            if ! grep -q "$dep" ./cli/test/** && ! grep -q "$dep" ./cli/bin/**; then
-              jq --indent 2 "del(.dependencies[\"$dep\"])" ./cli/package.json > ./cli/package.json.tmp
-              mv ./cli/package.json.tmp ./cli/package.json
-            fi
-          done
-          jq -r '.devDependencies | keys[]' ./cli/package.json | while read -r dep; do
-            if [[ "$dep" != "@stdlib"* ]]; then
-              continue
-            fi
-            dep=$(echo "$dep" | xargs)
-            if ! grep -q "$dep" ./cli/test/** && ! grep -q "$dep" ./cli/bin/**; then
-              jq --indent 2 "del(.devDependencies[\"$dep\"])" ./cli/package.json > ./cli/package.json.tmp
-              mv ./cli/package.json.tmp ./cli/package.json
-            fi
-          done
-
-      # Delete everything in current directory aside from cli folder:
-      - name: 'Delete everything in current directory aside from cli folder'
-        run: |
-          find . -type 'f' | grep -v -e "cli" -e ".git/" | xargs -r rm
-          find . -mindepth 1 -type 'd' | grep -v -e "cli" -e ".git" | xargs -r rm -rf
-
-      # Move cli directory to root:
-      - name: 'Move cli directory to root'
-        run: |
-          mv ./cli/.npmignore .
-          mv ./cli/* .
-          rmdir ./cli
-
-      # Commit changes:
-      - name: 'Commit changes'
-        run: |
-          git add -A
-          git commit -m "Auto-generated commit"
-
-      # Push changes to `cli` branch:
-      - name: 'Push changes to `cli` branch'
-        run: |
-          SLUG=${{ github.repository }}
-          echo "Pushing changes to $SLUG..."
-          git push "https://$GITHUB_ACTOR:$GITHUB_TOKEN@github.com/$SLUG.git" cli
-
-      # Send status to Slack channel if job fails:
-      - name: 'Send status to Slack channel in case of failure'
-        # Pin action to full length commit SHA
-        uses: 8398a7/action-slack@28ba43ae48961b90635b50953d216767a6bea486 # v3.16.2
-        with:
-          status: ${{ job.status }}
-          channel: '#npm-ci'
-        if: failure()
-
-  # Define job that succeeds if all bundles were successfully built:
-  create-tag-bundles:
-
-    # Define display name:
-    name: 'Create tag bundles'
-
-    # Define the type of virtual host machine on which to run the job:
-    runs-on: ubuntu-latest
-
-    # Indicate that this job depends on the bundle jobs finishing:
-    needs: [ deno, umd, esm, cli ]
-
-    # Define the steps to be executed:
-    steps:
-
-      # Checkout the repository:
-      - name: 'Checkout repository'
-        # Pin action to full length commit SHA
-        uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608 # v4.1.0
-        with:
-          fetch-depth: 2
-
-      # Check if workflow run was triggered by a patch, minor, or major version bump:
-      - name: 'Check if workflow run was triggered by a patch, minor, or major version bump'
-        id: check-if-bump
-        continue-on-error: true
-        run: |
-          VERSION_CHANGE_PKG_JSON=$(git diff HEAD~1 HEAD package.json | grep '"version":')
-          if [ -z "$VERSION_CHANGE_PKG_JSON" ]; then
-            echo "This workflow was not triggered by a version bump."
-            echo "bump=false" >> $GITHUB_OUTPUT
-          else
-            echo "This workflow was triggered by a version bump."
-            echo "bump=true" >> $GITHUB_OUTPUT
-          fi
-
-      # Configure Git:
-      - name: 'Configure Git'
-        if: steps.check-if-bump.outputs.bump
-        run: |
-          git config --local user.email "noreply@stdlib.io"
-          git config --local user.name "stdlib-bot"
-          git fetch --all
-
-      # Create bundle tags:
-      - name: 'Create bundle tags'
-        if: steps.check-if-bump.outputs.bump
-        run: |
-          SLUG=${{ github.repository }}
-          ESCAPED=$(echo $SLUG | sed -E 's/\//\\\//g')
-          VERSION="v$(jq --raw-output '.version' package.json)"
-
-          git checkout -b deno origin/deno
-          sed -i -E "s/$ESCAPED@deno/$ESCAPED@$VERSION-deno/g" README.md
-          git add README.md
-          git commit -m "Update README.md for Deno bundle $VERSION"
-          git tag -a $VERSION-deno -m "$VERSION-deno"
-          git push "https://$GITHUB_ACTOR:$GITHUB_TOKEN@github.com/$SLUG.git" $VERSION-deno
-          sed -i -E "s/$ESCAPED@$VERSION-deno/$ESCAPED@deno/g" README.md
-
-          perl -0777 -i -pe "s/\`\`\`javascript\nimport\s+([a-zA-Z0-9_]+)\s+from\s*'([^']+)';\n\`\`\`/\`\`\`javascript\nimport \1 from '\2';\n\`\`\`\n\The previous example will load the latest bundled code from the deno branch. Alternatively, you may load a specific version by loading the file from one of the \[tagged bundles\]\(https:\/\/github.com\/$ESCAPED\/tags\). For example,\n\n\`\`\`javascript\nimport \1 from 'https:\/\/cdn\.jsdelivr\.net\/gh\/$ESCAPED\@$VERSION-deno\/mod\.js';\n\`\`\`/" README.md
-
-          git add README.md
-          git commit -m "Auto-generated commit"
-          git push "https://$GITHUB_ACTOR:$GITHUB_TOKEN@github.com/$SLUG.git" deno
-
-          git checkout -b umd origin/umd
-          sed -i -E "s/$ESCAPED@umd/$ESCAPED@$VERSION-umd/g" README.md
-          git add README.md
-          git commit -m "Update README.md for UMD bundle $VERSION"
-          git tag -a $VERSION-umd -m "$VERSION-umd"
-          git push "https://$GITHUB_ACTOR:$GITHUB_TOKEN@github.com/$SLUG.git" $VERSION-umd
-          sed -i -E "s/$ESCAPED@$VERSION-umd/$ESCAPED@umd/g" README.md
-
-          perl -0777 -i -pe "s/\`\`\`javascript\n([a-zA-Z0-9_]+)\s+=\s*require\(\s*'([^']+)'\s*\)\n\`\`\`/\`\`\`javascript\n\1 = require\( '\2' \)\n\`\`\`\n\The previous example will load the latest bundled code from the umd branch. Alternatively, you may load a specific version by loading the file from one of the \[tagged bundles\]\(https:\/\/github.com\/$ESCAPED\/tags\). For example,\n\n\`\`\`javascript\n\1 = require\( 'https:\/\/cdn\.jsdelivr\.net\/gh\/$ESCAPED\@$VERSION-umd\/browser\.js' \)\n\`\`\`/" README.md
-
-          git add README.md
-          git commit -m "Auto-generated commit"
-          git push "https://$GITHUB_ACTOR:$GITHUB_TOKEN@github.com/$SLUG.git" umd
-
-          git checkout -b esm origin/esm
-          sed -i -E "s/$ESCAPED@esm/$ESCAPED@$VERSION-esm/g" README.md
-          git add README.md
-          git commit -m "Update README.md for ESM bundle $VERSION"
-          git tag -a $VERSION-esm -m "$VERSION-esm"
-          git push "https://$GITHUB_ACTOR:$GITHUB_TOKEN@github.com/$SLUG.git" $VERSION-esm
-          sed -i -E "s/$ESCAPED@$VERSION-esm/$ESCAPED@esm/g" README.md
-
-          perl -0777 -i -pe "s/\`\`\`javascript\nimport\s+([a-zA-Z0-9_]+)\s+from\s*'([^']+)';\n\`\`\`/\`\`\`javascript\nimport \1 from '\2';\n\`\`\`\n\The previous example will load the latest bundled code from the esm branch. Alternatively, you may load a specific version by loading the file from one of the \[tagged bundles\]\(https:\/\/github.com\/$ESCAPED\/tags\). For example,\n\n\`\`\`javascript\nimport \1 from 'https:\/\/cdn\.jsdelivr\.net\/gh\/$ESCAPED\@$VERSION-esm\/index\.mjs';\n\`\`\`/" README.md
-
-          git add README.md
-          git commit -m "Auto-generated commit"
-          git push "https://$GITHUB_ACTOR:$GITHUB_TOKEN@github.com/$SLUG.git" esm
-
-          git checkout -b cli origin/cli
-          sed -i -E "s/$ESCAPED/$ESCAPED@$VERSION/g" README.md
-          git add README.md
-          git commit -m "Update README.md for CLI branch $VERSION"
-          git tag -a $VERSION-cli -m "$VERSION-cli"
-          git push "https://$GITHUB_ACTOR:$GITHUB_TOKEN@github.com/$SLUG.git" $VERSION-cli
-
-          sed -i -E "s/$ESCAPED@$VERSION/$ESCAPED/g" README.md
-          git add README.md
-          git commit -m "Auto-generated commit"
-          git push "https://$GITHUB_ACTOR:$GITHUB_TOKEN@github.com/$SLUG.git" cli
-
-      # Run publish workflow for CLI package:
-      - name: 'Run publish workflow for CLI package'
-        if: steps.check-if-bump.outputs.bump
-        env:
-          GH_TOKEN: ${{secrets.GITHUB_TOKEN}}
-        run: |
-          gh workflow run publish_cli.yml
diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml
deleted file mode 100644
index 2888b88..0000000
--- a/.github/workflows/publish.yml
+++ /dev/null
@@ -1,252 +0,0 @@
-#/
-# @license Apache-2.0
-#
-# Copyright (c) 2021 The Stdlib Authors.
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-#    http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#/
-
-# Workflow name:
-name: publish
-
-# Workflow triggers:
-on:
-  # Allow the workflow to be manually run:
-  workflow_dispatch:
-    # Workflow inputs:
-    inputs:
-      version:
-        description: 'Version Increment'
-        type: choice
-        default: 'none'
-        options:
-          - 'none'
-          - 'major'
-          - 'minor'
-          - 'patch'
-          - 'premajor'
-          - 'preminor'
-          - 'prepatch'
-          - 'prerelease'
-
-# Workflow jobs:
-jobs:
-
-  # Define job to publish package to npm:
-  publish:
-
-    # Define display name:
-    name: 'Publish package to npm'
-
-    # Define the type of virtual host machine on which to run the job:
-    runs-on: ubuntu-latest
-
-    # Define environment variables:
-    env:
-      SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
-      NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
-
-    # Define the sequence of job steps...
-    steps:
-
-      # Checkout the repository:
-      - name: 'Checkout repository'
-        # Pin action to full length commit SHA
-        uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608 # v4.1.0
-
-      # Install Node.js:
-      - name: 'Install Node.js'
-        # Pin action to full length commit SHA
-        uses: actions/setup-node@b39b52d1213e96004bfcb1c61a8a6fa8ab84f3e8 # v4.0.1
-        with:
-          node-version: 20
-        timeout-minutes: 5
-
-      # Configure Git:
-      - name: 'Configure Git'
-        run: |
-          git config --local user.email "noreply@stdlib.io"
-          git config --local user.name "stdlib-bot"
-
-      # Increment package version (if requested):
-      - name: 'Increment package version (if requested)'
-        if: ${{ github.event.inputs.version != 'none' }}
-        run: |
-          # Save NPM_TOKEN to user's .npmrc:
-          echo "//registry.npmjs.org/:_authToken=${NPM_TOKEN}" > ~/.npmrc
-
-          # Increment package version:
-          npm version ${{ github.event.inputs.version }} --no-git-tag-version
-
-          # Define variable for new version:
-          NEW_VERSION=$(node -p "require('./package.json').version")
-
-          # Replace branch in README.md link definitions for badges with the new version:
-          find . -type f -name '*.md' -print0 | xargs -0 sed -Ei "s/branch([=:])[^ ]+/branch\1v${NEW_VERSION}/g"
-
-          # Rewrite CHANGELOG.md to replace "Unreleased" with the new version:
-          sed -Ei "s/Unreleased/${NEW_VERSION}/g" CHANGELOG.md
-          sed -Ei "s/unreleased/v${NEW_VERSION}/g" CHANGELOG.md
-
-          # Create a new commit and tag:
-          git add package.json README.md
-          git commit -m "Release v${NEW_VERSION}"
-          git tag -a "v${NEW_VERSION}" -m "Release v${NEW_VERSION}"
-
-          # Push changes to GitHub:
-          SLUG=${{ github.repository }}
-          git push "https://$GITHUB_ACTOR:$GITHUB_TOKEN@github.com/$SLUG.git" --follow-tags
-
-      # Remove CLI:
-      - name: 'Remove CLI'
-        if: ${{ github.ref == 'refs/heads/main' }}
-        run: |
-          # Exit if the package does not have a CLI:
-          if ! grep -q '"bin":' package.json; then
-            exit 0
-          fi
-          rm -rf ./bin/cli
-          rm -f test/test.cli.js
-          rm -f etc/cli_opts.json
-          rm -f docs/usage.txt
-
-          # For all dependencies, check in all *.js files if they are still used; if not, remove them:
-          jq -r '.dependencies | keys[]' ./package.json | while read -r dep; do
-            dep=$(echo "$dep" | xargs)
-            if ! find lib -name "*.js" -exec grep -q "$dep" {} + && ! grep -q -s "$dep" manifest.json && ! grep -q -s "$dep" include.gypi; then
-              jq --indent 2 "del(.dependencies[\"$dep\"])" ./package.json > ./package.json.tmp
-              mv ./package.json.tmp ./package.json
-            fi
-          done
-
-          # Set `devDependencies` to an empty object:
-          jq --indent 2 '.devDependencies = {}' ./package.json > ./package.json.tmp
-          mv ./package.json.tmp ./package.json
-
-          # Remove CLI section:
-          find . -type f -name '*.md' -print0 | xargs -0 perl -0777 -i -pe "s/(\* \* \*\n+)?<section class=\"cli\">[\s\S]+?<\!\-\- \/.cli \-\->//"
-
-          # Remove CLI from package.json:
-          jq -r 'del(.bin)' package.json > package.json.tmp
-          mv package.json.tmp package.json
-
-          # Add entry for CLI package to See Also section of README.md:
-          cliPkgName=$(jq -r '.name' package.json)-cli
-          escapedPkg=$(echo "$cliPkgName" | sed -e 's/\//\\\//g')
-          escapedPkg=$(echo "$escapedPkg" | sed -e 's/\@/\\\@/g')
-          find . -type f -name '*.md' -print0 | xargs -0 perl -0777 -i -pe "s/<section class=\"related\">(?:\n\n\* \* \*\n\n## See Also\n\n)?/<section class=\"related\">\n\n## See Also\n\n-   <span class=\"package-name\">[\`$escapedPkg\`][$escapedPkg]<\/span><span class=\"delimiter\">: <\/span><span class=\"description\">CLI package for use as a command-line utility.<\/span>\n/"
-
-          # Add link definition for CLI package to README.md:
-          find . -type f -name '*.md' -print0 | xargs -0 perl -0777 -i -pe "s/<section class=\"links\">/<section class=\"links\">\n\n[$escapedPkg]: https:\/\/www.npmjs.com\/package\/$escapedPkg/"
-
-      # Replace GitHub MathJax equations with SVGs:
-      - name: 'Replace GitHub MathJax equations with SVGs'
-        run: |
-          find . -type f -name '*.md' -print0 | xargs -0 perl -0777 -i -pe 's/```math\n([\s\S]+?)\n```\n\n//g'
-          find . -type f -name '*.md' -print0 | xargs -0 perl -0777 -i -pe 's/<!-- <div class="equation"(.*)(<\/div>\s*-->)/<div class="equation"$1<\/div>/sg'
-
-      # Replace GitHub links to individual packages with npm links:
-      - name: 'Replace all GitHub links to individual packages with npm links'
-        run: |
-          find . -type f -name '*.md' -print0 | xargs -0 sed -Ei '/tree\/main/b; s/@stdlib\/([^:]*)\]: https:\/\/github.com\/stdlib-js/@stdlib\/\1\]: https:\/\/www.npmjs.com\/package\/@stdlib/g'
-
-      # Replace list with links to other branches from installation section:
-      - name: 'Replace list with links to other branches from installation section'
-        run: |
-          find . -type f -name '*.md' -print0 | xargs -0 perl -0777 -i -pe "s/\`\`\`\n\nAlternatively,[^<]+<\/section>/\`\`\`\n\n<\/section>/"
-
-      # Remove unnecessary files:
-      - name: 'Remove unnecessary files'
-        run: |
-          rm -f docs/repl.txt
-          rm -f docs/types/test.ts
-
-      # Replace all stdlib GitHub dependencies with the respective npm packages:
-      - name: 'Replace all stdlib GitHub dependencies with the respective npm packages'
-        run: |
-          for dep in $(jq -r '.dependencies | keys | .[]' package.json); do
-            if [[ "$dep" != "@stdlib"* ]]; then
-              continue
-            fi
-            # Trim leading and trailing whitespace:
-            dep=$(echo "$dep" | xargs)
-            version="$(npm view $dep version)"
-            if [[ -z "$version" ]]; then
-              continue
-            fi
-            version="^$version"
-            jq -r --arg dep "$dep" --arg version "$version" '.dependencies[$dep] = $version' package.json > package.json.tmp
-            mv package.json.tmp package.json
-          done
-          for dep in $(jq -r '.devDependencies | keys | .[]' package.json); do
-            if [[ "$dep" != "@stdlib"* ]]; then
-              continue
-            fi
-            # Trim leading and trailing whitespace:
-            dep=$(echo "$dep" | xargs)
-            version="$(npm view $dep version)"
-            if [[ -z "$version" ]]; then
-              continue
-            fi
-            version="^$version"
-            jq -r --arg dep "$dep" --arg version "$version" '.devDependencies[$dep] = $version' package.json > package.json.tmp
-            mv package.json.tmp package.json
-          done
-
-      # Publish package to npm:
-      - name: 'Publish package to npm'
-        # Pin action to full length commit SHA
-        uses: JS-DevTools/npm-publish@19c28f1ef146469e409470805ea4279d47c3d35c # v3.1.1
-        with:
-          token: ${{ secrets.NPM_TOKEN }}
-          access: public
-
-      # Discard any uncommitted changes:
-      - name: 'Discard any uncommitted changes'
-        run: |
-          git reset --hard
-
-      # Send status to Slack channel if job fails:
-      - name: 'Send status to Slack channel in case of failure'
-        # Pin action to full length commit SHA
-        uses: 8398a7/action-slack@28ba43ae48961b90635b50953d216767a6bea486 # v3.16.2
-        with:
-          status: ${{ job.status }}
-          channel: '#npm-ci'
-        if: failure()
-
-  # Define job to cancel any running or queued workflow runs...
-  cancel:
-
-    # Define the type of virtual host machine on which to run the job:
-    runs-on: ubuntu-latest
-
-    # Time out the job after 3 minutes:
-    timeout-minutes: 3
-
-    # Define the sequence of job steps...
-    steps:
-
-      # Cancel any running or queued workflow runs:
-      - name: 'Cancel running or queued workflow runs'
-        # Pin action to full length commit SHA
-        uses: styfle/cancel-workflow-action@85880fa0301c86cca9da44039ee3bb12d3bedbfa # v0.12.1
-        with:
-          workflow_id: >-
-            benchmark.yml,
-            examples.yml,
-            test.yml,
-            test_coverage.yml,
-            test_install.yml,
-            publish.yml
-          access_token: ${{ github.token }}
diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml
deleted file mode 100644
index 3d77ba6..0000000
--- a/.github/workflows/test.yml
+++ /dev/null
@@ -1,99 +0,0 @@
-#/
-# @license Apache-2.0
-#
-# Copyright (c) 2021 The Stdlib Authors.
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-#    http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#/
-
-# Workflow name:
-name: test
-
-# Workflow triggers:
-on:
-  # Run workflow on a weekly schedule:
-  schedule:
-    # * is a special character in YAML so you have to quote this string
-    - cron:  '22 10 * * 3'
-
-  # Allow the workflow to be manually run:
-  workflow_dispatch:
-
-  # Run workflow on each push to the main branch:
-  push:
-
-  # Run workflow upon completion of `publish` workflow run:
-  workflow_run:
-    workflows: ["publish"]
-    types: [completed]
-
-# Workflow jobs:
-jobs:
-
-  # Define job to run tests...
-  test:
-
-    # Define display name:
-    name: 'Run tests'
-
-    # Define the type of virtual host machine:
-    runs-on: 'ubuntu-latest'
-
-    # Define environment variables:
-    env:
-      SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
-
-    # Define the sequence of job steps...
-    steps:
-
-      # Checkout the repository:
-      - name: 'Checkout repository'
-        # Pin action to full length commit SHA
-        uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608 # v4.1.0
-
-      # Install Node.js:
-      - name: 'Install Node.js'
-        # Pin action to full length commit SHA
-        uses: actions/setup-node@b39b52d1213e96004bfcb1c61a8a6fa8ab84f3e8 # v4.0.1
-        with:
-          node-version: 20
-        timeout-minutes: 5
-
-      # Install dependencies:
-      - name: 'Install production and development dependencies'
-        id: install
-        run: |
-          npm install || npm install || npm install
-        timeout-minutes: 15
-
-      # Build native add-on if present:
-      - name: 'Build native add-on (if present)'
-        run: |
-          if [ -f "binding.gyp" ]; then
-            npm install node-gyp --no-save && ./node_modules/.bin/node-gyp rebuild
-          fi
-
-      # Run tests:
-      - name: 'Run tests'
-        id: tests
-        run: |
-          npm test || npm test || npm test
-
-      # Send status to Slack channel if job fails:
-      - name: 'Send status to Slack channel in case of failure'
-        # Pin action to full length commit SHA
-        uses: 8398a7/action-slack@28ba43ae48961b90635b50953d216767a6bea486 # v3.16.2
-        with:
-          status: ${{ job.status }}
-          channel: '#npm-ci'
-        if: failure()
diff --git a/.github/workflows/test_bundles.yml b/.github/workflows/test_bundles.yml
deleted file mode 100644
index 5b5879a..0000000
--- a/.github/workflows/test_bundles.yml
+++ /dev/null
@@ -1,186 +0,0 @@
-#/
-# @license Apache-2.0
-#
-# Copyright (c) 2022 The Stdlib Authors.
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-#    http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#/
-
-# Workflow name:
-name: test_bundles
-
-# Workflow triggers:
-on:
-  # Run workflow upon completion of `productionize` workflow run:
-  workflow_run:
-    workflows: ["productionize"]
-    types: [completed]
-
-  # Allow workflow to be manually run:
-  workflow_dispatch:
-
-# Workflow jobs:
-jobs:
-
-  # Define job to test UMD bundles...
-  test-umd:
-
-    # Define display name:
-    name: 'Test UMD Bundles'
-
-    # Define the type of virtual host machine on which to run the job:
-    runs-on: ubuntu-latest
-
-    # Define environment variables:
-    env:
-      SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
-
-    # Define the sequence of job steps...
-    steps:
-      # Checkout UMD branch of the repository:
-      - name: 'Checkout branch with UMD build'
-        # Pin action to full length commit SHA
-        uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608 # v4.1.0
-        with:
-          ref: umd
-
-      # Install Node.js:
-      - name: 'Install Node.js'
-        # Pin action to full length commit SHA
-        uses: actions/setup-node@b39b52d1213e96004bfcb1c61a8a6fa8ab84f3e8 # v4.0.1
-        with:
-          node-version: 20
-
-      # Try loading the UMD bundle:
-      - name: 'Try loading UMD bundle'
-        run: |
-          node --eval "require( './index.js' )" || exit $?
-
-      # Install playwright for headless browser testing:
-      - name: 'Install playwright'
-        run: |
-          npm install playwright
-          npx playwright install --with-deps chromium
-
-      # Try loading the UMD browser bundle with playwright:
-      - name: 'Try loading UMD browser bundle with playwright'
-        run: |
-          PLAYWRIGHT_SCRIPT="\
-            const { chromium } = require( 'playwright' );\
-            (async () => {\
-              const browser = await chromium.launch();\
-              const page = await browser.newPage();\
-              page.on( 'pageerror', exception => {\
-                throw new Error( exception.message );\
-              });\
-              await page.addScriptTag({ path: './browser.js' });\
-              await browser.close();\
-            })();"
-          node --eval "$PLAYWRIGHT_SCRIPT" || exit $?
-
-      # Send notification to Slack channel if job fails:
-      - name: 'Send status to Slack channel in case of failure'
-        # Pin action to full length commit SHA
-        uses: 8398a7/action-slack@28ba43ae48961b90635b50953d216767a6bea486 # v3.16.2
-        with:
-          status: ${{ job.status }}
-          channel: '#npm-ci'
-        if: failure()
-
-  # Define job to test ES modules...
-  test-esm:
-
-    # Define display name:
-    name: 'Test ES Modules'
-
-    # Define the type of virtual host machine on which to run the job:
-    runs-on: ubuntu-latest
-
-    # Define environment variables:
-    env:
-      SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
-
-    # Define the sequence of job steps...
-    steps:
-
-      # Checkout ES modules branch of the repository:
-      - name: 'Checkout branch with ESM build'
-        # Pin action to full length commit SHA
-        uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608 # v4.1.0
-        with:
-          ref: esm
-
-      # Install Node.js:
-      - name: 'Install Node.js'
-        # Pin action to full length commit SHA
-        uses: actions/setup-node@b39b52d1213e96004bfcb1c61a8a6fa8ab84f3e8 # v4.0.1
-        with:
-          node-version: 20
-
-      # Try loading the ES module bundle:
-      - name: 'Try loading ESM'
-        run: |
-          node --experimental-network-imports --eval "import( './index.mjs' )" || exit $?
-
-      # Send notification to Slack channel if job fails:
-      - name: 'Send status to Slack channel in case of failure'
-        # Pin action to full length commit SHA
-        uses: 8398a7/action-slack@28ba43ae48961b90635b50953d216767a6bea486 # v3.16.2
-        with:
-          status: ${{ job.status }}
-          channel: '#npm-ci'
-        if: failure()
-
-  # Define job to test Deno bundles...
-  test-deno:
-
-    # Define display name:
-    name: 'Test Deno Bundles'
-
-    # Define the type of virtual host machine on which to run the job:
-    runs-on: ubuntu-latest
-
-    # Define environment variables:
-    env:
-      SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
-
-    # Define the sequence of job steps...
-    steps:
-
-      # Checkout Deno branch of the repository:
-      - name: 'Checkout branch with Deno build'
-        # Pin action to full length commit SHA
-        uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608 # v4.1.0
-        with:
-          ref: deno
-
-      # Install Deno:
-      - name: 'Install Deno'
-        # Pin action to full length commit SHA
-        uses: denoland/setup-deno@041b854f97b325bd60e53e9dc2de9cb9f9ac0cba # v1.1.4
-        with:
-          deno-version: vx.x.x
-
-      # Try loading the Deno bundle:
-      - name: 'Try loading Deno build'
-        run: |
-          deno eval "import main from './mod.js'" || exit $?
-
-      # Send notification to Slack channel if job fails:
-      - name: 'Send status to Slack channel in case of failure'
-        # Pin action to full length commit SHA
-        uses: 8398a7/action-slack@28ba43ae48961b90635b50953d216767a6bea486 # v3.16.2
-        with:
-          status: ${{ job.status }}
-          channel: '#npm-ci'
-        if: failure()
diff --git a/.github/workflows/test_coverage.yml b/.github/workflows/test_coverage.yml
deleted file mode 100644
index 2bcf0cd..0000000
--- a/.github/workflows/test_coverage.yml
+++ /dev/null
@@ -1,133 +0,0 @@
-#/
-# @license Apache-2.0
-#
-# Copyright (c) 2021 The Stdlib Authors.
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-#    http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#/
-
-# Workflow name:
-name: test_coverage
-
-# Workflow triggers:
-on:
-  # Run workflow upon completion of `test` workflow run:
-  workflow_run:
-    workflows: ["test"]
-    types: [completed]
-
-  # Allow workflow to be manually run:
-  workflow_dispatch:
-
-# Workflow jobs:
-jobs:
-
-  # Define job to run test coverage...
-  coverage:
-
-    # Display name:
-    name: 'Calculate Test Coverage'
-
-    # Define the type of virtual host machine on which to run the job:
-    runs-on: ubuntu-latest
-
-    # Define environment variables:
-    env:
-      SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
-
-    # Define the sequence of job steps...
-    steps:
-
-      # Checkout the repository:
-      - name: 'Checkout repository'
-        # Pin action to full length commit SHA
-        uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608 # v4.1.0
-
-      # Install Node.js:
-      - name: 'Install Node.js'
-        # Pin action to full length commit SHA
-        uses: actions/setup-node@b39b52d1213e96004bfcb1c61a8a6fa8ab84f3e8 # v4.0.1
-        with:
-          node-version: 20
-        timeout-minutes: 5
-
-      # Install dependencies:
-      - name: 'Install production and development dependencies'
-        run: |
-          npm install || npm install || npm install
-        timeout-minutes: 15
-
-      # Build native add-on if present:
-      - name: 'Build native add-on (if present)'
-        run: |
-          if [ -f "binding.gyp" ]; then
-            npm install node-gyp --no-save && ./node_modules/.bin/node-gyp rebuild
-          fi
-
-      # Calculate coverage:
-      - name: 'Calculate test coverage'
-        run: |
-          npm run test-cov || npm run test-cov || npm run test-cov
-        timeout-minutes: 15
-
-      # Upload coverage report to Codecov:
-      - name: 'Upload coverage to Codecov'
-        id: upload
-        # Pin action to full length commit SHA
-        uses: codecov/codecov-action@84508663e988701840491b86de86b666e8a86bed # v4.3.0
-        with:
-          directory: reports/coverage
-          flags: unittests
-          fail_ci_if_error: true
-        env:
-          CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
-
-      # Extract coverage value:
-      - name: 'Extract coverage value and assign to output'
-        id: extract-coverage
-        run: |
-          coverage=`cat reports/coverage/lcov-report/index.html | grep "fraction" | grep -oP '\d+/\d+' | printf %s "$(cat)" | jq -R -s -c 'split("\n")'`
-          echo "coverage=$coverage" >> $GITHUB_OUTPUT
-
-          # Format coverage as Markdown table row:
-          table=`echo $coverage | sed -e 's/,/|/g; s/"/ /g; s/\[/|/; s/\]/|/'`
-          echo "table=$table" >> $GITHUB_OUTPUT
-
-      # Print coverage report to GitHub Actions log:
-      - name: 'Print coverage report to GitHub Actions log'
-        run: |
-          echo "## Coverage Report" >> $GITHUB_STEP_SUMMARY
-          echo "" >> $GITHUB_STEP_SUMMARY
-          echo "| Statements | Branches | Functions | Lines | " >> $GITHUB_STEP_SUMMARY
-          echo "| ---------- | -------- | --------- | ----- | " >> $GITHUB_STEP_SUMMARY
-          echo "${{ steps.extract-coverage.outputs.table }}" >> $GITHUB_STEP_SUMMARY
-          echo "" >> $GITHUB_STEP_SUMMARY
-
-      # Send Slack notification if job fails:
-      - name: 'Send status to Slack channel in case of failure'
-        # Pin action to full length commit SHA
-        uses: 8398a7/action-slack@28ba43ae48961b90635b50953d216767a6bea486 # v3.16.2
-        with:
-          status: ${{ job.status }}
-          channel: '#npm-ci'
-        if: failure()
-
-      # Send data to events server:
-      - name: 'Post data'
-        # Pin action to full length commit SHA
-        uses: distributhor/workflow-webhook@48a40b380ce4593b6a6676528cd005986ae56629 # v3.0.3
-        env:
-          webhook_url: ${{ secrets.STDLIB_COVERAGE_URL }}
-          webhook_secret: ${{ secrets.STDLIB_WEBHOOK_SECRET }}
-          data: '{ "coverage": ${{ steps.extract-coverage.outputs.coverage }}, "run_id": "${{ github.run_id }}" }'
-        if: ${{ false }}
diff --git a/.github/workflows/test_install.yml b/.github/workflows/test_install.yml
deleted file mode 100644
index 61779da..0000000
--- a/.github/workflows/test_install.yml
+++ /dev/null
@@ -1,85 +0,0 @@
-#/
-# @license Apache-2.0
-#
-# Copyright (c) 2021 The Stdlib Authors.
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-#    http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#/
-
-# Workflow name:
-name: test_install
-
-# Workflow triggers:
-on:
-  # Run workflow on a weekly schedule:
-  schedule:
-    # * is a special character in YAML so you have to quote this string
-    - cron:  '22 10 * * 3'
-
-  # Run workflow upon completion of `publish` workflow run:
-  workflow_run:
-    workflows: ["publish"]
-    types: [completed]
-
-  # Allow workflow to be manually run:
-  workflow_dispatch:
-
-# Workflow jobs:
-jobs:
-
-  # Define job to test installing dependencies...
-  test-install:
-
-    # Define display name:
-    name: 'Test installing dependencies'
-
-    # Define the type of virtual host machine on which to run the job:
-    runs-on: ubuntu-latest
-
-    # Define environment variables:
-    env:
-      SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
-
-    # Run workflow job if `publish` workflow run is successful or when the workflow is manually triggered or on a schedule:
-    if: ${{ github.event.workflow_run.conclusion == 'success' || github.event_name == 'workflow_dispatch' || github.event_name == 'schedule' }}
-
-    # Define the sequence of job steps...
-    steps:
-
-      # Checkout the repository:
-      - name: 'Checkout repository'
-        # Pin action to full length commit SHA
-        uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608 # v4.1.0
-
-      # Install Node.js:
-      - name: 'Install Node.js'
-        # Pin action to full length commit SHA
-        uses: actions/setup-node@b39b52d1213e96004bfcb1c61a8a6fa8ab84f3e8 # v4.0.1
-        with:
-          node-version: 20
-        timeout-minutes: 5
-
-      # Install dependencies:
-      - name: 'Install production dependencies via npm'
-        run: |
-          npm install --only=prod || npm install --only=prod || npm install --only=prod
-        timeout-minutes: 15
-
-      # Send Slack notification if job fails:
-      - name: 'Send notification to Slack in case of failure'
-        # Pin action to full length commit SHA
-        uses: 8398a7/action-slack@28ba43ae48961b90635b50953d216767a6bea486 # v3.16.2
-        with:
-          status: ${{ job.status }}
-          channel: '#npm-ci'
-        if: failure()
diff --git a/.github/workflows/test_published_package.yml b/.github/workflows/test_published_package.yml
deleted file mode 100644
index 6093d93..0000000
--- a/.github/workflows/test_published_package.yml
+++ /dev/null
@@ -1,105 +0,0 @@
-#/
-# @license Apache-2.0
-#
-# Copyright (c) 2024 The Stdlib Authors.
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-#    http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#/
-
-# Workflow name:
-name: test_published_package
-
-# Workflow triggers:
-on:
-  # Run workflow on a weekly schedule:
-  schedule:
-    # * is a special character in YAML so you have to quote this string
-    - cron:  '22 10 * * 3'
-
-  # Run workflow upon completion of `publish` workflow run:
-  workflow_run:
-    workflows: ["publish"]
-    types: [completed]
-
-  # Allow workflow to be manually run:
-  workflow_dispatch:
-
-# Workflow jobs:
-jobs:
-  test-published:
-    # Define a display name:
-    name: 'Test running examples of published package'
-
-    # Define the type of virtual host machine:
-    runs-on: ubuntu-latest
-
-    # Define environment variables:
-    env:
-      SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
-
-    # Run workflow job if `publish` workflow run is successful or when the workflow is manually triggered or on a schedule:
-    if: ${{ github.event.workflow_run.conclusion == 'success' || github.event_name == 'workflow_dispatch' || github.event_name == 'schedule' }}
-
-    # Define the job's steps:
-    steps:
-      # Checkout the repository:
-      - name: 'Checkout repository'
-        uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608 # v4.1.0
-
-      # Install Node.js:
-      - name: 'Install Node.js'
-        uses: actions/setup-node@b39b52d1213e96004bfcb1c61a8a6fa8ab84f3e8 # v4.0.1
-        with:
-          node-version: 20
-        timeout-minutes: 5
-
-      # Create test directory and run examples:
-      - name: 'Create test directory and run examples'
-        run: |
-          cd ..
-          mkdir test-published
-          cd test-published
-
-          # Copy example file:
-          cp $GITHUB_WORKSPACE/examples/index.js .
-
-          # Create a minimal package.json
-          echo '{
-            "name": "test-published",
-            "version": "1.0.0",
-            "main": "index.js",
-            "dependencies": {}
-          }' > package.json
-
-          # Get package name and modify example file:
-          PACKAGE_NAME=$(jq -r '.name' $GITHUB_WORKSPACE/package.json)
-          ESCAPED_PACKAGE_NAME=$(echo "$PACKAGE_NAME" | sed 's/[\/&]/\\&/g')
-
-          sed -i "s/require( '.\/..\/lib' )/require( '$ESCAPED_PACKAGE_NAME' )/g" index.js
-
-          # Extract and install dependencies:
-          DEPS=$(grep -oP "require\(\s*'([^']+)'\s*\)" index.js | sed "s/require(\s*'//" | sed "s/'\s*)//" | grep -v "^\.")
-          for dep in $DEPS; do
-            npm install $dep --save
-          done
-
-          # Run the example:
-          node index.js
-
-      # Send Slack notification if job fails:
-      - name: 'Send notification to Slack in case of failure'
-        uses: 8398a7/action-slack@28ba43ae48961b90635b50953d216767a6bea486 # v3.16.2
-        with:
-          status: ${{ job.status }}
-          channel: '#npm-ci'
-        if: failure()
diff --git a/.gitignore b/.gitignore
deleted file mode 100644
index 16b03f7..0000000
--- a/.gitignore
+++ /dev/null
@@ -1,194 +0,0 @@
-#/
-# @license Apache-2.0
-#
-# Copyright (c) 2017 The Stdlib Authors.
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-#    http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#/
-
-# Files #
-#########
-package.json.copy
-.stdlibrc
-
-# Directories #
-###############
-build/
-downloads/
-reports/
-tmp/
-
-# Compiled source #
-###################
-*.com
-*.class
-*.dll
-*.o
-*.so
-*.slo
-*.lo
-*.obj
-*.dylib
-*.lai
-*.la
-*.a
-*.lib
-*.ko
-*.elf
-*.node
-
-# Precompiled headers #
-#######################
-*.gch
-*.pch
-
-# Executables #
-###############
-*.exe
-*.out
-*.app
-
-# Packages #
-############
-# It is better to unpack these files and commit the raw source
-# git has its own built in compression methods
-*.7z
-*.dmg
-*.gz
-*.iso
-*.jar
-*.rar
-*.tar
-*.zip
-
-# Logs and databases #
-######################
-*.log
-*.sql
-*.sqlite
-
-# OS generated files #
-######################
-.DS_Store
-.DS_Store?
-._*
-.Spotlight-V100
-.Trashes
-Icon?
-ehthumbs.db
-Thumbs.db
-Desktop.ini
-
-# Temporary files #
-###################
-*~
-
-# Node.js #
-###########
-/node_modules/
-lib/node_modules/**/node_modules/
-docs/**/node_modules/
-pids
-*.pid
-*.seed
-yarn.lock
-package-lock.json
-
-# Typescript #
-##############
-*.tsbuildinfo
-lib/node_modules/**/tsconfig.json
-lib/node_modules/**/tslint.json
-
-# Matlab #
-##########
-*.asv
-*.mex*
-
-# Fortran #
-###########
-*.mod
-
-# R #
-#####
-.Rhistory
-.Rapp.history
-.Rproj.user/
-
-# Python #
-##########
-__pycache__/
-*.py[cod]
-*$py.class
-*.egg-info/
-
-# TeX #
-#######
-*.aux
-*.lof
-*.log
-*.lot
-*.fls
-*.out
-*.toc
-*.dvi
-*-converted-to.*
-*.bbl
-*.bcf
-*.blg
-*-blx.aux
-*-blx.bib
-*.brf
-*.run.xml
-*.fdb_latexmk
-*.synctex
-*.synctex.gz
-*.synctex.gz(busy)
-*.pdfsync
-*.alg
-*.loa
-acs-*.bib
-*.thm
-*.nav
-*.snm
-*.vrb
-*.acn
-*.acr
-*.glg
-*.glo
-*.gls
-*-concordance.tex
-*.tikz
-*-tikzDictionary
-*.idx
-*.ilg
-*.ind
-*.ist
-
-# Visual Studio #
-#################
-.vscode/
-jsconfig.json
-
-# Sublime Text #
-################
-*.sublime-workspace
-*.sublime-project
-
-# Other editor files #
-######################
-.idea/
-
-# Cursor #
-##########
-.cursorignore
diff --git a/.npmrc b/.npmrc
deleted file mode 100644
index 58dbd10..0000000
--- a/.npmrc
+++ /dev/null
@@ -1,31 +0,0 @@
-#/
-# @license Apache-2.0
-#
-# Copyright (c) 2017 The Stdlib Authors.
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-#    http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#/
-
-# Configuration for [npm][1].
-#
-# [1]: https://docs.npmjs.com/files/npmrc
-
-# Disable the creation of a lock file:
-package-lock = false
-shrinkwrap = false
-
-# Disable automatically "saving" dependencies on install:
-save = false
-
-# Do not generate provenance metadata:
-provenance = false
diff --git a/CHANGELOG.md b/CHANGELOG.md
deleted file mode 100644
index a1f3ac1..0000000
--- a/CHANGELOG.md
+++ /dev/null
@@ -1,238 +0,0 @@
-# CHANGELOG
-
-> Package changelog.
-
-<section class="release" id="unreleased">
-
-## Unreleased (2025-07-21)
-
-<section class="commits">
-
-### Commits
-
-<details>
-
--   [`f387603`](https://github.com/stdlib-js/stdlib/commit/f387603e739f88a38af3263ce6ff675ad903ee8c) - **docs:** consistently use declarative instead of imperative sentences outside of intros _(by Philipp Burckhardt)_
-
-</details>
-
-</section>
-
-<!-- /.commits -->
-
-<section class="contributors">
-
-### Contributors
-
-A total of 1 person contributed to this release. Thank you to this contributor:
-
--   Philipp Burckhardt
-
-</section>
-
-<!-- /.contributors -->
-
-</section>
-
-<!-- /.release -->
-
-<section class="release" id="v0.2.2">
-
-## 0.2.2 (2024-07-27)
-
-No changes reported for this release.
-
-</section>
-
-<!-- /.release -->
-
-<section class="release" id="v0.2.1">
-
-## 0.2.1 (2024-02-22)
-
-No changes reported for this release.
-
-</section>
-
-<!-- /.release -->
-
-<section class="release" id="v0.2.0">
-
-## 0.2.0 (2024-02-14)
-
-<section class="commits">
-
-### Commits
-
-<details>
-
--   [`453dd85`](https://github.com/stdlib-js/stdlib/commit/453dd85b5dd186d2b4d458256fe84906e1503fe2) - **build:** remove tslint directives _(by Philipp Burckhardt)_
-
-</details>
-
-</section>
-
-<!-- /.commits -->
-
-<section class="contributors">
-
-### Contributors
-
-A total of 1 person contributed to this release. Thank you to this contributor:
-
--   Philipp Burckhardt
-
-</section>
-
-<!-- /.contributors -->
-
-</section>
-
-<!-- /.release -->
-
-<section class="release" id="v0.1.1">
-
-## 0.1.1 (2023-10-04)
-
-No changes reported for this release.
-
-</section>
-
-<!-- /.release -->
-
-<section class="release" id="v0.1.0">
-
-## 0.1.0 (2023-09-22)
-
-<section class="features">
-
-### Features
-
--   [`3dec037`](https://github.com/stdlib-js/stdlib/commit/3dec037f6c9097c6778408c877008d7eeee5ad78) - update minimum TypeScript version
-
-</section>
-
-<!-- /.features -->
-
-<section class="breaking-changes">
-
-### BREAKING CHANGES
-
--   [`3dec037`](https://github.com/stdlib-js/stdlib/commit/3dec037f6c9097c6778408c877008d7eeee5ad78): update minimum TypeScript version to 4.1
-
-    -   To migrate, users should upgrade their TypeScript version to at least version 4.1.
-
-</section>
-
-<!-- /.breaking-changes -->
-
-<section class="commits">
-
-### Commits
-
-<details>
-
--   [`3dec037`](https://github.com/stdlib-js/stdlib/commit/3dec037f6c9097c6778408c877008d7eeee5ad78) - **feat:** update minimum TypeScript version _(by Philipp Burckhardt)_
-
-</details>
-
-</section>
-
-<!-- /.commits -->
-
-<section class="contributors">
-
-### Contributors
-
-A total of 1 person contributed to this release. Thank you to this contributor:
-
--   Philipp Burckhardt
-
-</section>
-
-<!-- /.contributors -->
-
-</section>
-
-<!-- /.release -->
-
-<section class="release" id="v0.0.8">
-
-## 0.0.8 (2022-02-16)
-
-No changes reported for this release.
-
-</section>
-
-<!-- /.release -->
-
-<section class="release" id="v0.0.7">
-
-## 0.0.7 (2021-08-22)
-
-No changes reported for this release.
-
-</section>
-
-<!-- /.release -->
-
-<section class="release" id="v0.0.6">
-
-## 0.0.6 (2021-07-09)
-
-No changes reported for this release.
-
-</section>
-
-<!-- /.release -->
-
-<section class="release" id="v0.0.5">
-
-## 0.0.5 (2021-07-06)
-
-No changes reported for this release.
-
-</section>
-
-<!-- /.release -->
-
-<section class="release" id="v0.0.4">
-
-## 0.0.4 (2021-06-27)
-
-No changes reported for this release.
-
-</section>
-
-<!-- /.release -->
-
-<section class="release" id="v0.0.3">
-
-## 0.0.3 (2021-06-16)
-
-No changes reported for this release.
-
-</section>
-
-<!-- /.release -->
-
-<section class="release" id="v0.0.2">
-
-## 0.0.2 (2021-06-15)
-
-No changes reported for this release.
-
-</section>
-
-<!-- /.release -->
-
-<section class="release" id="v0.0.1">
-
-## 0.0.1 (2021-06-14)
-
-No changes reported for this release.
-
-</section>
-
-<!-- /.release -->
-
diff --git a/CITATION.cff b/CITATION.cff
deleted file mode 100644
index 2ec6fff..0000000
--- a/CITATION.cff
+++ /dev/null
@@ -1,30 +0,0 @@
-cff-version: 1.2.0
-title: stdlib
-message: >-
-  If you use this software, please cite it using the
-  metadata from this file.
-
-type: software
-
-authors:
-  - name: The Stdlib Authors
-    url: https://github.com/stdlib-js/stdlib/graphs/contributors
-
-repository-code: https://github.com/stdlib-js/stdlib
-url: https://stdlib.io
-
-abstract: |
-  Standard library for JavaScript and Node.js.
-
-keywords:
-  - JavaScript
-  - Node.js
-  - TypeScript
-  - standard library
-  - scientific computing
-  - numerical computing
-  - statistical computing
-
-license: Apache-2.0 AND BSL-1.0
-
-date-released: 2016
diff --git a/CODE_OF_CONDUCT.md b/CODE_OF_CONDUCT.md
deleted file mode 100644
index 35b70c9..0000000
--- a/CODE_OF_CONDUCT.md
+++ /dev/null
@@ -1,3 +0,0 @@
-# Code of Conduct
-
-stdlib expects community participants to adhere to the project Code of Conduct. The [full text](https://github.com/stdlib-js/stdlib/blob/develop/CODE_OF_CONDUCT.md) is available in the main project repository.
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
deleted file mode 100644
index 5f59443..0000000
--- a/CONTRIBUTING.md
+++ /dev/null
@@ -1,3 +0,0 @@
-# Contribution Guidelines
-
-Woot woot! If you are new to stdlib, welcome! And thanks for your interest! Guidelines for how to contribute to the project are [available](https://github.com/stdlib-js/stdlib/blob/develop/CONTRIBUTING.md) in the main project repository.
diff --git a/Makefile b/Makefile
deleted file mode 100644
index 8c0d48f..0000000
--- a/Makefile
+++ /dev/null
@@ -1,534 +0,0 @@
-#/
-# @license Apache-2.0
-#
-# Copyright (c) 2021 The Stdlib Authors.
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-#    http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#/
-
-# USER VARIABLES #
-
-ifndef VERBOSE
-	QUIET := @
-else
-	QUIET :=
-endif
-
-# Indicate whether to "fast" fail when linting, running tests, etc:
-ifndef FAST_FAIL
-	FAIL_FAST := true
-else
-ifeq ($(FAST_FAIL), 0)
-	FAIL_FAST := false
-else
-	FAIL_FAST := true
-endif
-endif
-
-# Define the `NODE_PATH` environment variable:
-NODE_PATH ?=
-
-# Define the `NODE_ENV` environment variable:
-NODE_ENV ?=
-
-
-# INTERNAL VARIABLES #
-
-# Instruct make to warn us when we use an undefined variable (e.g., misspellings).
-MAKEFLAGS += --warn-undefined-variables
-
-# Define the default target:
-.DEFAULT_GOAL := all
-
-# Define the `SHELL` variable to avoid issues on systems where the variable may be inherited from the environment.
-#
-# ## Notes
-#
-# -   We use `bash` so that we can use `pipefail`.
-#
-#
-# [1]: https://www.gnu.org/prep/standards/html_node/Makefile-Basics.html#Makefile-Basics
-# [2]: http://clarkgrubb.com/makefile-style-guide
-SHELL := bash
-
-# Define shell flags.
-#
-# ## Notes
-#
-# -   `.SHELLFLAGS` was introduced in GNU Make 3.82 and has no effect on the version of GNU Make installed on Mac OS X, which is 3.81.
-# -   The `-e` flag causes `bash` to exit immediately if a `bash` executed command fails.
-# -   The `-u` flag causes `bash` to exit with an error message if a variable is accessed without being defined.
-# -   The `pipefail` option specifies that, if any of the commands in a pipeline fail, the entire pipeline fails. Otherwise the return value of a pipeline is the return value of the last command.
-# -   The `-c` flag is in the default value of `.SHELLFLAGS`, which must be preserved, as this is how `make` passes the script to be executed to `bash`.
-#
-.SHELLFLAGS := -eu -o pipefail -c
-
-# Remove targets if its recipe fails.
-#
-# ## Notes
-#
-# -   Mentioning this target anywhere in a Makefile prevents a user from re-running make and using an incomplete or invalid target.
-# -   When debugging, it may be necessary to comment this line out so the incomplete or invalid target can be inspected.
-#
-# [1]: https://www.gnu.org/software/make/manual/html_node/Special-Targets.html
-.DELETE_ON_ERROR:
-
-# Remove all the default suffixes, preferring to define all rules explicitly.
-#
-# [1]: https://www.gnu.org/software/make/manual/html_node/Suffix-Rules.html#Suffix-Rules
-# [2]: https://www.gnu.org/software/make/manual/html_node/Suffix-Rules.html#Suffix-Rules
-.SUFFIXES:
-
-# Determine the OS ([1][1], [2][2]).
-#
-# [1]: https://en.wikipedia.org/wiki/Uname#Examples
-# [2]: http://stackoverflow.com/a/27776822/2225624
-OS ?= $(shell uname)
-ifneq (, $(findstring MINGW,$(OS)))
-	OS := WINNT
-else
-ifneq (, $(findstring MSYS,$(OS)))
-	OS := WINNT
-else
-ifneq (, $(findstring CYGWIN,$(OS)))
-	OS := WINNT
-else
-ifneq (, $(findstring Windows_NT,$(OS)))
-	OS := WINNT
-endif
-endif
-endif
-endif
-
-# Determine the filename:
-this_file := $(lastword $(MAKEFILE_LIST))
-
-# Determine the absolute path of the Makefile (see http://blog.jgc.org/2007/01/what-makefile-am-i-in.html):
-this_dir := $(dir $(CURDIR)/$(word $(words $(MAKEFILE_LIST)),$(MAKEFILE_LIST)))
-
-# Remove the trailing slash:
-this_dir := $(patsubst %/,%,$(this_dir))
-
-# Determine root directory:
-ROOT_DIR = $(this_dir)
-
-# Define the root build directory:
-BUILD_DIR ?= $(ROOT_DIR)/build
-
-# Define the root directory for storing distributable files:
-DIST_DIR ?= $(ROOT_DIR)/dist
-
-# Define the root directory for storing temporary files:
-TMP_DIR ?= $(ROOT_DIR)/tmp
-
-# Define the directories for writing reports, including code coverage:
-REPORTS_DIR ?= $(ROOT_DIR)/reports
-COVERAGE_DIR ?= $(REPORTS_DIR)/coverage
-
-# Define the top-level directory containing node module dependencies:
-NODE_MODULES ?= $(ROOT_DIR)/node_modules
-
-# Define the top-level directory containing node module executables:
-BIN_DIR ?= $(NODE_MODULES)/.bin
-
-# Define the path to the root `package.json`:
-ROOT_PACKAGE_JSON ?= $(ROOT_DIR)/package.json
-
-# Define the folder name convention for source files requiring compilation:
-SRC_FOLDER ?= src
-
-# Define the folder name convention for documentation files:
-DOCUMENTATION_FOLDER ?= docs
-
-# Define the folder name convention for configuration files:
-CONFIG_FOLDER ?= etc
-
-# Define the folder name convention for benchmark files:
-BENCHMARKS_FOLDER ?= benchmark
-
-# Define the folder name convention for benchmark fixtures:
-BENCHMARKS_FIXTURES_FOLDER ?= $(BENCHMARKS_FOLDER)/fixtures
-
-# Define the folder name convention for examples files:
-EXAMPLES_FOLDER ?= examples
-
-# Define the folder name convention for examples fixtures:
-EXAMPLES_FIXTURES_FOLDER ?= $(EXAMPLES_FOLDER)/fixtures
-
-# Define the folder name convention for test files:
-TESTS_FOLDER ?= test
-
-# Define the folder name convention for test fixtures:
-TESTS_FIXTURES_FOLDER ?= $(TESTS_FOLDER)/fixtures
-
-# Define a filepath pattern for benchmark files:
-BENCHMARKS_FILTER ?= .*/.*
-
-# Define a filepath pattern for example files:
-EXAMPLES_FILTER ?= .*/.*
-
-# Define a filepath pattern for test files:
-TESTS_FILTER ?= .*/.*
-
-# Define a filename pattern for benchmark files:
-BENCHMARKS_PATTERN ?= benchmark*.js
-
-# Define a filename pattern for example files:
-EXAMPLES_PATTERN ?= *.js
-
-# Define a filename pattern for test files:
-TESTS_PATTERN ?= test*.js
-
-# Define Node environments:
-ifdef NODE_ENV
-	NODE_ENV_BENCHMARK := $(NODE_ENV)
-	NODE_ENV_EXAMPLES := $(NODE_ENV)
-	NODE_ENV_TEST := $(NODE_ENV)
-else
-	NODE_ENV ?=
-	NODE_ENV_BENCHMARK ?= benchmark
-	NODE_ENV_EXAMPLES ?= examples
-	NODE_ENV_TEST ?= test
-endif
-
-# Define whether delete operations should be safe (i.e., deleted items are sent to trash, rather than permanently deleted):
-SAFE_DELETE ?= false
-
-# Define the delete command:
-ifeq ($(SAFE_DELETE), true)
-	# FIXME: -rm -rf
-	DELETE := -rm
-	DELETE_FLAGS := -rf
-else
-	DELETE ?= -rm
-	DELETE_FLAGS ?= -rf
-endif
-
-# Determine the `open` command:
-ifeq ($(OS), Darwin)
-	OPEN ?= open
-else
-	OPEN ?= xdg-open
-endif
-# TODO: add Windows command
-
-# Define the command for `node`:
-NODE ?= node
-
-# Define the command for `npm`:
-NPM ?= npm
-
-# Define the path to a JavaScript test runner.
-#
-# ## Notes
-#
-# -   We reference the `bin` file directly in order to support using `istanbul` for code coverage on Windows (https://github.com/gotwarlost/istanbul#usage-on-windows)
-JAVASCRIPT_TEST ?= $(NODE_MODULES)/tape/bin/tape
-
-# Define any command-line options to use when invoking the test runner:
-JAVASCRIPT_TEST_FLAGS ?=
-
-# Define the path to the executable for parsing TAP output:
-TAP_REPORTER ?= $(BIN_DIR)/tap-min
-
-# Define the path to the Istanbul executable:
-ISTANBUL ?= $(BIN_DIR)/istanbul
-
-# Define which files and directories to exclude from coverage instrumentation:
-ISTANBUL_EXCLUDES_FLAGS ?= \
-	--no-default-excludes \
-	-x 'node_modules/**' \
-	-x 'reports/**' \
-	-x 'tmp/**' \
-	-x 'deps/**' \
-	-x 'dist/**' \
-	-x "**/$(SRC_FOLDER)/**" \
-	-x "**/$(TESTS_FOLDER)/**" \
-	-x "**/$(EXAMPLES_FOLDER)/**" \
-	-x "**/$(BENCHMARKS_FOLDER)/**" \
-	-x "**/$(CONFIG_FOLDER)/**" \
-	-x "**/$(DOCUMENTATION_FOLDER)/**"
-
-# Define the command to generate test coverage:
-ISTANBUL_COVER ?= $(ISTANBUL) cover
-
-# Define the type of report Istanbul should produce:
-ISTANBUL_COVER_REPORT_FORMAT ?= lcov
-
-# Define the command-line options to be used when generating code coverage:
-ISTANBUL_COVER_FLAGS ?= \
-	$(ISTANBUL_EXCLUDES_FLAGS) \
-	--dir $(COVERAGE_DIR) \
-	--report $(ISTANBUL_COVER_REPORT_FORMAT)
-
-# On Mac OSX, in order to use `|` and other regular expression operators, we need to use enhanced regular expression syntax (-E); see https://developer.apple.com/library/mac/documentation/Darwin/Reference/ManPages/man7/re_format.7.html#//apple_ref/doc/man/7/re_format.
-ifeq ($(OS), Darwin)
-	find_kernel_prefix := -E
-else
-	find_kernel_prefix :=
-endif
-
-# Common exclude flags that most recipes for finding package files should use (Note: order does matter to some degree):
-FIND_COMMON_EXCLUDE_FLAGS ?= \
-	'!' -path "$(ROOT_DIR)/.*" \
-	'!' -path "$(NODE_MODULES)/*" \
-	'!' -path "$(BUILD_DIR)/*" \
-	'!' -path "$(REPORTS_DIR)/*" \
-
-# Define exclusion flags to use when searching for benchmark files:
-FIND_BENCHMARKS_EXCLUDE_FLAGS ?= \
-	$(FIND_COMMON_EXCLUDE_FLAGS) \
-	'!' -path "$(ROOT_DIR)/**/$(BENCHMARKS_FIXTURES_FOLDER)/*"
-
-# Define flags for finding benchmark files:
-FIND_BENCHMARKS_FLAGS ?= \
-	-type f \
-	-name "$(BENCHMARKS_PATTERN)" \
-	\( -path "$(ROOT_DIR)/$(BENCHMARKS_FOLDER)/**" -o -path "$(ROOT_DIR)/**/$(BENCHMARKS_FOLDER)/**" \) \
-	-regex "$(BENCHMARKS_FILTER)" \
-	$(FIND_BENCHMARKS_EXCLUDE_FLAGS)
-
-ifneq ($(OS), Darwin)
-	FIND_BENCHMARKS_FLAGS := -regextype posix-extended $(FIND_BENCHMARKS_FLAGS)
-endif
-
-# Define a command to list benchmark files:
-FIND_BENCHMARKS_CMD ?= find $(find_kernel_prefix) $(ROOT_DIR) $(FIND_BENCHMARKS_FLAGS)
-
-# Define exclusion flags to use when searching for examples files:
-FIND_EXAMPLES_EXCLUDE_FLAGS ?= \
-	$(FIND_COMMON_EXCLUDE_FLAGS) \
-	'!' -path "$(ROOT_DIR)/**/$(EXAMPLES_FIXTURES_FOLDER)/*"
-
-# Define flags for finding examples files:
-FIND_EXAMPLES_FLAGS ?= \
-	-type f \
-	-name "$(EXAMPLES_PATTERN)" \
-	\( -path "$(ROOT_DIR)/$(EXAMPLES_FOLDER)/**" -o -path "$(ROOT_DIR)/**/$(EXAMPLES_FOLDER)/**" \) \
-	-regex "$(EXAMPLES_FILTER)" \
-	$(FIND_EXAMPLES_EXCLUDE_FLAGS)
-
-ifneq ($(OS), Darwin)
-	FIND_EXAMPLES_FLAGS := -regextype posix-extended $(FIND_EXAMPLES_FLAGS)
-endif
-
-# Define a command to list example files:
-FIND_EXAMPLES_CMD ?= find $(find_kernel_prefix) $(ROOT_DIR) $(FIND_EXAMPLES_FLAGS)
-
-# Define exclusion flags to use when searching for test files:
-FIND_TESTS_EXCLUDE_FLAGS ?= \
-	$(FIND_COMMON_EXCLUDE_FLAGS) \
-	'!' -path "$(ROOT_DIR)/**/$(TESTS_FIXTURES_FOLDER)/*"
-
-# Define flags for finding test files:
-FIND_TESTS_FLAGS ?= \
-	-type f \
-	-name "$(TESTS_PATTERN)" \
-	-regex "$(TESTS_FILTER)" \
-	$(FIND_TESTS_EXCLUDE_FLAGS)
-
-ifneq ($(OS), Darwin)
-	FIND_TESTS_FLAGS := -regextype posix-extended $(FIND_TESTS_FLAGS)
-endif
-
-# Define a command to list test files:
-FIND_TESTS_CMD ?= find $(find_kernel_prefix) $(ROOT_DIR) $(FIND_TESTS_FLAGS)
-
-
-# RULES #
-
-#/
-# Default target.
-#
-# @example
-# make
-#
-# @example
-# make all
-#/
-all: help
-
-.PHONY: all
-
-#/
-# Prints a `Makefile` help message.
-#
-# @example
-# make help
-#/
-help:
-	$(QUIET) echo 'Read the Makefile to see the list of available commands.'
-	$(QUIET) echo ''
-
-.PHONY: help
-
-#/
-# Prints the runtime value of a `Makefile` variable.
-#
-# ## Notes
-#
-# -   The rule uses the following format:
-#
-#     ```bash
-#     $ make inspect.<variable>
-#     ```
-#
-# @example
-# make inspect.ROOT_DIR
-#
-# @example
-# make inspect.CC
-#/
-inspect.%:
-	$(QUIET) echo '$*=$($*)'
-
-#/
-# Runs the project's install sequence.
-#
-# @example
-# make install
-#/
-install:
-	$(NPM) install
-
-.PHONY: install
-
-#/
-# Removes node module dependencies.
-#
-# @example
-# make clean-node
-#/
-clean-node:
-	$(QUIET) $(DELETE) $(DELETE_FLAGS) $(NODE_MODULES)
-
-#/
-# Runs the project's cleanup sequence.
-#
-# @example
-# make clean
-#/
-clean: clean-node clean-cov
-	$(QUIET) $(DELETE) $(DELETE_FLAGS) $(BUILD_DIR)
-	$(QUIET) $(DELETE) $(DELETE_FLAGS) $(REPORTS_DIR)
-
-.PHONY: clean
-
-#/
-# Runs JavaScript benchmarks consecutively.
-#
-# ## Notes
-#
-# -   The recipe assumes that benchmark files can be run via Node.js.
-# -   This rule is useful when wanting to glob for JavaScript benchmark files (e.g., run all JavaScript benchmarks for a particular package).
-#
-#
-# @param {string} [BENCHMARKS_FILTER] - file path pattern (e.g., `.*/utils/group-by/.*`)
-#
-# @example
-# make benchmark
-#
-# @example
-# make benchmark BENCHMARKS_FILTER=".*/utils/group-by/.*"
-#/
-benchmark: $(NODE_MODULES)
-	$(QUIET) $(FIND_BENCHMARKS_CMD) | grep '^[\/]\|^[a-zA-Z]:[/\]' | while read -r file; do \
-		echo ""; \
-		echo "Running benchmark: $$file"; \
-		NODE_ENV="$(NODE_ENV_BENCHMARK)" \
-		NODE_PATH="$(NODE_PATH)" \
-		$(NODE) $$file || exit 1; \
-	done
-
-.PHONY: benchmark
-
-#/
-# Runs JavaScript examples consecutively.
-#
-# ## Notes
-#
-# -   This rule is useful when wanting to glob for JavaScript examples files (e.g., run all JavaScript examples for a particular package).
-# -   This rule **assumes** that examples files can be run using Node.js.
-#
-#
-# @param {string} [EXAMPLES_FILTER] - file path pattern (e.g., `.*/math/base/special/abs/.*`)
-#
-# @example
-# make examples
-#
-# @example
-# make examples EXAMPLES_FILTER=".*/strided/common/.*"
-#/
-examples: $(NODE_MODULES)
-	$(QUIET) $(FIND_EXAMPLES_CMD) | grep '^[\/]\|^[a-zA-Z]:[/\]' | while read -r file; do \
-		echo ""; \
-		echo "Running example: $$file"; \
-		NODE_ENV="$(NODE_ENV_EXAMPLES)" \
-		NODE_PATH="$(NODE_PATH)" \
-		$(NODE) $$file || exit 1; \
-	done
-
-.PHONY: examples
-
-#/
-# Runs JavaScript tests consecutively.
-#
-# ## Notes
-#
-# -   This rule is useful when wanting to glob for JavaScript test files (e.g., run all JavaScript tests for a particular package).
-# -   This rule **assumes** that test files can be run using Node.js.
-#
-#
-# @param {string} [TEST_FILTER] - file path pattern (e.g., `.*/math/base/special/abs/.*`)
-#
-# @example
-# make test
-#
-# @example
-# make test TESTS_FILTER=".*/strided/common/.*"
-#/
-test: $(NODE_MODULES)
-	$(QUIET) $(FIND_TESTS_CMD) | grep '^[\/]\|^[a-zA-Z]:[/\]' | while read -r test; do \
-		echo ''; \
-		echo "Running test: $$test"; \
-		NODE_ENV="$(NODE_ENV_TEST)" \
-		NODE_PATH="$(NODE_PATH)" \
-		$(JAVASCRIPT_TEST) \
-			$(JAVASCRIPT_TEST_FLAGS) \
-			$$test \
-		| $(TAP_REPORTER) || exit 1; \
-	done
-
-.PHONY: test
-
-#/
-# Runs unit tests and generate a test coverage report.
-#
-# @example
-# make test-cov
-#/
-test-cov: clean-cov
-	$(QUIET) NODE_ENV="$(NODE_ENV_TEST)" \
-	NODE_PATH="$(NODE_PATH)" \
-	$(ISTANBUL_COVER) $(ISTANBUL_COVER_FLAGS) $(JAVASCRIPT_TEST) -- $$( $(FIND_TESTS_CMD) )
-
-.PHONY: test-cov
-
-#/
-# Removes a test coverage directory.
-#
-# @example
-# make clean-cov
-#/
-clean-cov:
-	$(QUIET) $(DELETE) $(DELETE_FLAGS) $(COVERAGE_DIR)
diff --git a/README.md b/README.md
index 18fdb53..39ab35d 100644
--- a/README.md
+++ b/README.md
@@ -35,168 +35,19 @@ limitations under the License.
 
 > Write data to a file.
 
-<section class="installation">
-
-## Installation
-
-```bash
-npm install @stdlib/fs-write-file
-```
-
-Alternatively,
-
--   To load the package in a website via a `script` tag without installation and bundlers, use the [ES Module][es-module] available on the [`esm`][esm-url] branch (see [README][esm-readme]).
--   If you are using Deno, visit the [`deno`][deno-url] branch (see [README][deno-readme] for usage intructions).
--   For use in Observable, or in browser/node environments, use the [Universal Module Definition (UMD)][umd] build available on the [`umd`][umd-url] branch (see [README][umd-readme]).
--   To use as a general utility for the command line, install the corresponding [CLI package][cli-section] globally.
-
-The [branches.md][branches-url] file summarizes the available branches and displays a diagram illustrating their relationships.
-
-To view installation and usage instructions specific to each branch build, be sure to explicitly navigate to the respective README files on each branch, as linked to above.
-
-</section>
-
-<section class="usage">
-
-## Usage
-
-```javascript
-var writeFile = require( '@stdlib/fs-write-file' );
-```
-
-#### writeFile( file, data\[, options], clbk )
-
-Asynchronously writes `data` to a `file`.
-
-```javascript
-var join = require( 'path' ).join;
-
-var fpath = join( __dirname, 'examples', 'fixtures', 'file.txt' );
-
-writeFile( fpath, 'beep boop\n', onWrite );
-
-function onWrite( error ) {
-    if ( error ) {
-        throw error;
-    }
-}
-```
-
-The `data` argument may be either a `string` or a [`Buffer`][@stdlib/buffer/ctor].
-
-```javascript
-var join = require( 'path' ).join;
-var string2buffer = require( '@stdlib/buffer-from-string' );
-
-var fpath = join( __dirname, 'examples', 'fixtures', 'file.txt' );
-
-writeFile( fpath, string2buffer( 'beep boop\n' ), onWrite );
-
-function onWrite( error ) {
-    if ( error ) {
-        throw error;
-    }
-}
-```
-
-The function accepts the same `options` and has the same defaults as [`fs.writeFile()`][node-fs].
-
-#### writeFile.sync( file, data\[, options] )
-
-Synchronously writes `data` to a `file`.
-
-```javascript
-var join = require( 'path' ).join;
-
-var fpath = join( __dirname, 'examples', 'fixtures', 'file.txt' );
-
-var err = writeFile.sync( fpath, 'beep boop\n' );
-if ( err instanceof Error ) {
-    throw err;
-}
-```
-
-The function accepts the same `options` and has the same defaults as [`fs.writeFileSync()`][node-fs].
-
-</section>
-
-<!-- /.usage -->
-
-<section class="notes">
-
-## Notes
 
--   The difference between this `writeFile.sync` and [`fs.writeFileSync()`][node-fs] is that [`fs.writeFileSync()`][node-fs] will throw if an `error` is encountered (e.g., if given a non-existent directory path) and this API will return an `error`. Hence, the following anti-pattern
 
-    <!-- run-disable -->
 
-    ```javascript
-    var fs = require( 'fs' );
 
-    // Check for directory path existence to prevent an error being thrown...
-    if ( fs.existsSync( '/path/to' ) ) {
-        fs.writeFileSync( '/path/to/file.txt', 'beep boop\n' );
-    }
-    ```
 
-    can be replaced by an approach which addresses existence via `error` handling.
 
-    <!-- run-disable -->
 
-    ```javascript
-    var writeFile = require( '@stdlib/fs-write-file' );
-
-    // Explicitly handle the error...
-    var err = writeFile.sync( '/path/to/file.txt', 'beep boop\n' );
-    if ( err instanceof Error ) {
-        // You choose what to do...
-        throw err;
-    }
-    ```
-
-</section>
-
-<!-- /.notes -->
-
-<section class="examples">
-
-## Examples
 
-<!-- eslint no-undef: "error" -->
 
-```javascript
-var join = require( 'path' ).join;
-var writeFile = require( '@stdlib/fs-write-file' );
-
-var fpath = join( __dirname, 'examples', 'fixtures', 'file.txt' );
-
-// Synchronously write data to a file:
-var err = writeFile.sync( fpath, 'beep boop\n', 'utf8' );
-// returns null
-
-console.log( err instanceof Error );
-// => false
-
-// Asynchronously write data to a file:
-writeFile( fpath, 'beep boop\n', onWrite );
-
-function onWrite( error ) {
-    if ( error ) {
-        console.error( 'Error: %s', error.message );
-    }
-    console.log( 'Success!' );
-}
-```
-
-</section>
-
-<!-- /.examples -->
-
-* * *
 
 <section class="cli">
 
-## CLI
+
 
 <section class="installation">
 
@@ -214,7 +65,7 @@ npm install -g @stdlib/fs-write-file-cli
 
 <section class="usage">
 
-### Usage
+## Usage
 
 ```text
 Usage: write-file [options] <filepath>
@@ -234,7 +85,7 @@ Options:
 
 <section class="notes">
 
-### Notes
+## Notes
 
 -   Relative output file paths are resolved relative to the current working directory.
 -   Errors are written to `stderr`.
@@ -246,7 +97,7 @@ Options:
 
 <section class="examples">
 
-### Examples
+## Examples
 
 ```bash
 $ printf 'beep boop\n' | write-file ./examples/fixtures/file.txt
@@ -264,10 +115,9 @@ $ printf 'beep boop\n' | write-file ./examples/fixtures/file.txt
 
 <section class="related">
 
-* * *
-
 ## See Also
 
+-   <span class="package-name">[`@stdlib/fs-write-file`][@stdlib/fs-write-file]</span><span class="delimiter">: </span><span class="description">write data to a file.</span>
 -   <span class="package-name">[`@stdlib/fs-exists`][@stdlib/fs/exists]</span><span class="delimiter">: </span><span class="description">test whether a path exists on the filesystem.</span>
 -   <span class="package-name">[`@stdlib/fs-read-file`][@stdlib/fs/read-file]</span><span class="delimiter">: </span><span class="description">read the entire contents of a file.</span>
 
@@ -288,7 +138,7 @@ This package is part of [stdlib][stdlib], a standard library for JavaScript and
 
 For more information on the project, filing bug reports and feature requests, and guidance on how to develop [stdlib][stdlib], see the main project [repository][stdlib].
 
-#### Community
+### Community
 
 [![Chat][chat-image]][chat-url]
 
@@ -311,8 +161,8 @@ Copyright &copy; 2016-2025. The Stdlib [Authors][stdlib-authors].
 
 <section class="links">
 
-[npm-image]: http://img.shields.io/npm/v/@stdlib/fs-write-file.svg
-[npm-url]: https://npmjs.org/package/@stdlib/fs-write-file
+[npm-image]: http://img.shields.io/npm/v/@stdlib/fs-write-file-cli.svg
+[npm-url]: https://npmjs.org/package/@stdlib/fs-write-file-cli
 
 [test-image]: https://github.com/stdlib-js/fs-write-file/actions/workflows/test.yml/badge.svg?branch=main
 [test-url]: https://github.com/stdlib-js/fs-write-file/actions/workflows/test.yml?query=branch:main
diff --git a/SECURITY.md b/SECURITY.md
deleted file mode 100644
index 9702d4c..0000000
--- a/SECURITY.md
+++ /dev/null
@@ -1,5 +0,0 @@
-# Security
-
-> Policy for reporting security vulnerabilities.
-
-See the security policy [in the main project repository](https://github.com/stdlib-js/stdlib/security).
diff --git a/benchmark/benchmark.js b/benchmark/benchmark.js
deleted file mode 100644
index 67876f0..0000000
--- a/benchmark/benchmark.js
+++ /dev/null
@@ -1,81 +0,0 @@
-/**
-* @license Apache-2.0
-*
-* Copyright (c) 2018 The Stdlib Authors.
-*
-* Licensed under the Apache License, Version 2.0 (the "License");
-* you may not use this file except in compliance with the License.
-* You may obtain a copy of the License at
-*
-*    http://www.apache.org/licenses/LICENSE-2.0
-*
-* Unless required by applicable law or agreed to in writing, software
-* distributed under the License is distributed on an "AS IS" BASIS,
-* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-* See the License for the specific language governing permissions and
-* limitations under the License.
-*/
-
-'use strict';
-
-// MODULES //
-
-var join = require( 'path' ).join;
-var bench = require( '@stdlib/bench-harness' );
-var readFile = require( '@stdlib/fs-read-file' ).sync;
-var pkg = require( './../package.json' ).name;
-var writeFile = require( './../lib' );
-
-
-// FIXTURES //
-
-var FILE = join( __dirname, 'fixtures', 'file.txt' );
-var DATA = readFile( FILE );
-
-
-// MAIN //
-
-bench( pkg, function benchmark( b ) {
-	var i;
-
-	i = 0;
-	b.tic();
-
-	return next();
-
-	function next() {
-		i += 1;
-		if ( i <= b.iterations ) {
-			return writeFile( FILE, DATA, done );
-		}
-		b.toc();
-		b.pass( 'benchmark finished' );
-		b.end();
-	}
-
-	function done( error ) {
-		if ( error ) {
-			b.fail( error.message );
-		}
-		next();
-	}
-});
-
-bench( pkg+':sync', function benchmark( b ) {
-	var out;
-	var i;
-
-	b.tic();
-	for ( i = 0; i < b.iterations; i++ ) {
-		out = writeFile.sync( FILE, DATA );
-		if ( out instanceof Error ) {
-			b.fail( out.message );
-		}
-	}
-	b.toc();
-	if ( out instanceof Error ) {
-		b.fail( out.message );
-	}
-	b.pass( 'benchmark finished' );
-	b.end();
-});
diff --git a/benchmark/fixtures/file.txt b/benchmark/fixtures/file.txt
deleted file mode 100644
index fae06e3..0000000
--- a/benchmark/fixtures/file.txt
+++ /dev/null
@@ -1 +0,0 @@
-beep boop
diff --git a/bin/cli b/bin/cli
index 8c2468f..e49179a 100755
--- a/bin/cli
+++ b/bin/cli
@@ -27,7 +27,7 @@ var readFileSync = require( '@stdlib/fs-read-file' ).sync;
 var CLI = require( '@stdlib/cli-ctor' );
 var stdin = require( '@stdlib/process-read-stdin' );
 var cwd = require( '@stdlib/process-cwd' );
-var writeFile = require( './../lib' );
+var writeFile = require( '@stdlib/fs-write-file' );
 
 
 // MAIN //
diff --git a/branches.md b/branches.md
deleted file mode 100644
index 755f7b7..0000000
--- a/branches.md
+++ /dev/null
@@ -1,60 +0,0 @@
-<!--
-
-@license Apache-2.0
-
-Copyright (c) 2023 The Stdlib Authors.
-
-Licensed under the Apache License, Version 2.0 (the "License");
-you may not use this file except in compliance with the License.
-You may obtain a copy of the License at
-
-    http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.
-
--->
-
-# Branches
-
-This repository has the following branches:
-
--   **main**: default branch generated from the [stdlib project][stdlib-url], where all development takes place.
--   **production**: [production build][production-url] of the package (e.g., reformatted error messages to reduce bundle sizes and thus the number of bytes transmitted over a network).
--   **esm**: [ES Module][esm-url] branch for use via a `script` tag without the need for installation and bundlers (see [README][esm-readme]).
--   **deno**: [Deno][deno-url] branch for use in Deno (see [README][deno-readme]).
--   **umd**: [UMD][umd-url] branch for use in Observable, or in dual browser/Node.js environments (see [README][umd-readme]).
--   **cli**: [CLI][cli-url] branch for use on the command line.
-
-The following diagram illustrates the relationships among the above branches:
-
-```mermaid
-graph TD;
-A[stdlib]-->|generate standalone package|B;
-B[main] -->|productionize| C[production];
-C -->|bundle| D[esm];
-C -->|bundle| E[deno];
-C -->|bundle| F[umd];
-C -->|extract| G[cli];
-
-%% click A href "https://github.com/stdlib-js/stdlib/tree/develop/lib/node_modules/%40stdlib/fs/write-file"
-%% click B href "https://github.com/stdlib-js/fs-write-file/tree/main"
-%% click C href "https://github.com/stdlib-js/fs-write-file/tree/production"
-%% click D href "https://github.com/stdlib-js/fs-write-file/tree/esm"
-%% click E href "https://github.com/stdlib-js/fs-write-file/tree/deno"
-%% click F href "https://github.com/stdlib-js/fs-write-file/tree/umd"
-%% click G href "https://github.com/stdlib-js/fs-write-file/tree/cli"
-```
-
-[stdlib-url]: https://github.com/stdlib-js/stdlib/tree/develop/lib/node_modules/%40stdlib/fs/write-file
-[production-url]: https://github.com/stdlib-js/fs-write-file/tree/production
-[deno-url]: https://github.com/stdlib-js/fs-write-file/tree/deno
-[deno-readme]: https://github.com/stdlib-js/fs-write-file/blob/deno/README.md
-[umd-url]: https://github.com/stdlib-js/fs-write-file/tree/umd
-[umd-readme]: https://github.com/stdlib-js/fs-write-file/blob/umd/README.md
-[esm-url]: https://github.com/stdlib-js/fs-write-file/tree/esm
-[esm-readme]: https://github.com/stdlib-js/fs-write-file/blob/esm/README.md
-[cli-url]: https://github.com/stdlib-js/fs-write-file/tree/cli
\ No newline at end of file
diff --git a/dist/index.d.ts b/dist/index.d.ts
deleted file mode 100644
index 8f7cbe8..0000000
--- a/dist/index.d.ts
+++ /dev/null
@@ -1,3 +0,0 @@
-/// <reference path="../docs/types/index.d.ts" />
-import writeFile from '../docs/types/index';
-export = writeFile;
\ No newline at end of file
diff --git a/dist/index.js b/dist/index.js
deleted file mode 100644
index 6ad5e63..0000000
--- a/dist/index.js
+++ /dev/null
@@ -1,7 +0,0 @@
-"use strict";var t=function(e,r){return function(){return r||e((r={exports:{}}).exports,r),r.exports}};var n=t(function(F,i){
-var y=require("fs").writeFile;function g(){var e,r;for(e=[],r=0;r<arguments.length;r++)e.push(arguments[r]);y.apply(null,e)}i.exports=g
-});var a=t(function(h,u){
-var s=require("fs").writeFileSync;function o(e,r,c){try{arguments.length>2?s(e,r,c):s(e,r)}catch(v){return v}return null}u.exports=o
-});var p=require('@stdlib/utils-define-nonenumerable-read-only-property/dist'),l=n(),w=a();p(l,"sync",w);module.exports=l;
-/** @license Apache-2.0 */
-//# sourceMappingURL=index.js.map
diff --git a/dist/index.js.map b/dist/index.js.map
deleted file mode 100644
index 1dc54ce..0000000
--- a/dist/index.js.map
+++ /dev/null
@@ -1,7 +0,0 @@
-{
-  "version": 3,
-  "sources": ["../lib/main.js", "../lib/sync.js", "../lib/index.js"],
-  "sourcesContent": ["/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n*    http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar write = require( 'fs' ).writeFile;\n\n\n// MAIN //\n\n/**\n* Asynchronously writes data to a file.\n*\n* @param {(string|Buffer|integer)} file - file path or file descriptor\n* @param {(string|Buffer)} data - data to write\n* @param {(Object|string)} [options] - options\n* @param {Function} clbk - callback to invoke after writing data to a file\n*\n* @example\n* function onWrite( error ) {\n*     if ( error ) {\n*         throw error;\n*     }\n* }\n*\n* writeFile( './beep/boop.txt', 'beep boop\\n', onWrite );\n*/\nfunction writeFile() {\n\tvar args;\n\tvar i;\n\targs = [];\n\tfor ( i = 0; i < arguments.length; i++ ) {\n\t\targs.push( arguments[ i ] );\n\t}\n\twrite.apply( null, args );\n}\n\n\n// EXPORTS //\n\nmodule.exports = writeFile;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n*    http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar writeFile = require( 'fs' ).writeFileSync; // eslint-disable-line node/no-sync\n\n\n// MAIN //\n\n/**\n* Synchronously writes data to a file.\n*\n* @param {(string|Buffer|integer)} file - file path or file descriptor\n* @param {(string|Buffer)} data - data to write\n* @param {(Object|string)} [options] - options\n* @returns {(Error|null)} error object or null\n*\n* @example\n* var err = writeFileSync( './beep/boop.txt', 'beep boop\\n' );\n* if ( err instanceof Error ) {\n*     throw err;\n* }\n*/\nfunction writeFileSync( file, data, options ) {\n\ttry {\n\t\tif ( arguments.length > 2 ) {\n\t\t\twriteFile( file, data, options );\n\t\t} else {\n\t\t\twriteFile( file, data );\n\t\t}\n\t} catch ( err ) {\n\t\treturn err;\n\t}\n\treturn null;\n}\n\n\n// EXPORTS //\n\nmodule.exports = writeFileSync;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n*    http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Write data to a file.\n*\n* @module @stdlib/fs-write-file\n*\n* @example\n* var writeFile = require( '@stdlib/fs-write-file' );\n*\n* function onWrite( error ) {\n*     if ( error ) {\n*         throw error;\n*     }\n* }\n*\n* writeFile( './beep/boop.txt', 'beep boop\\n', onWrite );\n*\n* @example\n* var writeFileSync = require( '@stdlib/fs-write-file' ).sync;\n*\n* var err = writeFileSync( './beep/boop.txt', 'beep boop\\n' );\n* if ( err instanceof Error ) {\n*     throw err;\n* }\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils-define-nonenumerable-read-only-property' );\nvar main = require( './main.js' );\nvar sync = require( './sync.js' );\n\n\n// MAIN //\n\nsetReadOnly( main, 'sync', sync );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n"],
-  "mappings": "uGAAA,IAAAA,EAAAC,EAAA,SAAAC,EAAAC,EAAA,cAsBA,IAAIC,EAAQ,QAAS,IAAK,EAAE,UAsB5B,SAASC,GAAY,CACpB,IAAIC,EACAC,EAEJ,IADAD,EAAO,CAAC,EACFC,EAAI,EAAGA,EAAI,UAAU,OAAQA,IAClCD,EAAK,KAAM,UAAWC,CAAE,CAAE,EAE3BH,EAAM,MAAO,KAAME,CAAK,CACzB,CAKAH,EAAO,QAAUE,ICzDjB,IAAAG,EAAAC,EAAA,SAAAC,EAAAC,EAAA,cAsBA,IAAIC,EAAY,QAAS,IAAK,EAAE,cAmBhC,SAASC,EAAeC,EAAMC,EAAMC,EAAU,CAC7C,GAAI,CACE,UAAU,OAAS,EACvBJ,EAAWE,EAAMC,EAAMC,CAAQ,EAE/BJ,EAAWE,EAAMC,CAAK,CAExB,OAAUE,EAAM,CACf,OAAOA,CACR,CACA,OAAO,IACR,CAKAN,EAAO,QAAUE,ICVjB,IAAIK,EAAc,QAAS,uDAAwD,EAC/EC,EAAO,IACPC,EAAO,IAKXF,EAAaC,EAAM,OAAQC,CAAK,EAKhC,OAAO,QAAUD",
-  "names": ["require_main", "__commonJSMin", "exports", "module", "write", "writeFile", "args", "i", "require_sync", "__commonJSMin", "exports", "module", "writeFile", "writeFileSync", "file", "data", "options", "err", "setReadOnly", "main", "sync"]
-}
diff --git a/docs/repl.txt b/docs/repl.txt
deleted file mode 100644
index bd34227..0000000
--- a/docs/repl.txt
+++ /dev/null
@@ -1,74 +0,0 @@
-
-{{alias}}( file, data[, options], clbk )
-    Asynchronously writes data to a file.
-
-    Parameters
-    ----------
-    file: string|Buffer|integer
-        Filename or file descriptor.
-
-    data: string|Buffer
-        Data to write.
-
-    options: Object|string (optional)
-        Options. If a string, the value is the encoding.
-
-    options.encoding: string|null (optional)
-        Encoding. The encoding option is ignored if the data argument is a
-        buffer. Default: 'utf8'.
-
-    options.flag: string (optional)
-        Flag. Default: 'w'.
-
-    options.mode: integer (optional)
-        Mode. Default: 0o666.
-
-    clbk: Function
-        Callback to invoke upon writing data to a file.
-
-    Examples
-    --------
-    > function onWrite( error ) {
-    ...     if ( error ) {
-    ...         console.error( error.message );
-    ...     }
-    ... };
-    > {{alias}}( './beep/boop.txt', 'beep boop', onWrite );
-
-
-{{alias}}.sync( file, data[, options] )
-    Synchronously writes data to a file.
-
-    Parameters
-    ----------
-    file: string|Buffer|integer
-        Filename or file descriptor.
-
-    data: string|Buffer
-        Data to write.
-
-    options: Object|string (optional)
-        Options. If a string, the value is the encoding.
-
-    options.encoding: string|null (optional)
-        Encoding. The encoding option is ignored if the data argument is a
-        buffer. Default: 'utf8'.
-
-    options.flag: string (optional)
-        Flag. Default: 'w'.
-
-    options.mode: integer (optional)
-        Mode. Default: 0o666.
-
-    Returns
-    -------
-    err: Error|null
-        Error object or null.
-
-    Examples
-    --------
-    > var err = {{alias}}.sync( './beep/boop.txt', 'beep boop' );
-
-    See Also
-    --------
-
diff --git a/docs/types/index.d.ts b/docs/types/index.d.ts
deleted file mode 100644
index 0a01dda..0000000
--- a/docs/types/index.d.ts
+++ /dev/null
@@ -1,133 +0,0 @@
-/*
-* @license Apache-2.0
-*
-* Copyright (c) 2021 The Stdlib Authors.
-*
-* Licensed under the Apache License, Version 2.0 (the "License");
-* you may not use this file except in compliance with the License.
-* You may obtain a copy of the License at
-*
-*    http://www.apache.org/licenses/LICENSE-2.0
-*
-* Unless required by applicable law or agreed to in writing, software
-* distributed under the License is distributed on an "AS IS" BASIS,
-* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-* See the License for the specific language governing permissions and
-* limitations under the License.
-*/
-
-// TypeScript Version: 4.1
-
-/// <reference types="node"/>
-
-import { Buffer } from 'buffer';
-
-/**
-* Interface defining function options.
-*/
-interface Options {
-	/**
-	* Encoding; ignored if the data argument is a buffer (default: null).
-	*/
-	encoding?: string | null;
-
-	/**
-	* Flag (default: 'r').
-	*/
-	flag?: string;
-
-	/**
-	 * Mode (default: 0o666)
-	 */
-	mode?: number;
-}
-
-/**
-* Callback invoked upon writing data to a file.
-*
-* @param err - error object
-*/
-type Callback = ( err: Error | null ) => void;
-
-/**
-* Interface for writing a file.
-*/
-interface WriteFile {
-	/**
-	* Asynchronously writes data to a file.
-	*
-	* @param file - file path or file descriptor
-	* @param data - data to write
-	* @param options - options; if a string, the value is the encoding
-	* @param clbk - callback to invoke after writing data to a file
-	*
-	* @example
-	* function onWrite( error ) {
-	*     if ( error ) {
-	*         throw error;
-	*     }
-	* }
-	*
-	* var opts = { 'flag': 'r' };
-	* writeFile( './beep/boop.txt', 'beep boop\n', opts, onWrite );
-	*/
-	( file: string | Buffer | number, data: string | Buffer, options: Options | string, clbk: Callback ): void;
-
-	/**
-	* Asynchronously writes data to a file.
-	*
-	* @param file - file path or file descriptor
-	* @param data - data to write
-	* @param clbk - callback to invoke after writing data to a file
-	*
-	* @example
-	* function onWrite( error ) {
-	*     if ( error ) {
-	*         throw error;
-	*     }
-	* }
-	*
-	* writeFile( './beep/boop.txt', 'beep boop\n', onWrite );
-	*/
-	( file: string | Buffer | number, data: string | Buffer, clbk: Callback ): void;
-
-	/**
-	* Synchronously writes data to a file.
-	*
-	* @param file - file path or file descriptor
-	* @param data - data to write
-	* @param options - options; if a string, the value is the encoding
-	* @returns error object or null
-	*
-	* @example
-	* var err = writeFileSync( './beep/boop.txt', 'beep boop\n' );
-	* if ( err instanceof Error ) {
-	*     throw err;
-	* }
-	*/
-	sync( file: string | Buffer | number, data: string | Buffer, options?: Options | string ): Error | null;
-}
-
-/**
-* Asynchronously writes data to a file.
-*
-* @param file - file path or file descriptor
-* @param data - data to write
-* @param options - options; if a string, the value is the encoding
-* @param clbk - callback to invoke after writing data to a file
-*
-* @example
-* function onWrite( error ) {
-*     if ( error ) {
-*         throw error;
-*     }
-* }
-*
-* writeFile( './beep/boop.txt', 'beep boop\n', onWrite );
-*/
-declare var writeFile: WriteFile;
-
-
-// EXPORTS //
-
-export = writeFile;
diff --git a/docs/types/test.ts b/docs/types/test.ts
deleted file mode 100644
index ee1c9ce..0000000
--- a/docs/types/test.ts
+++ /dev/null
@@ -1,193 +0,0 @@
-/*
-* @license Apache-2.0
-*
-* Copyright (c) 2021 The Stdlib Authors.
-*
-* Licensed under the Apache License, Version 2.0 (the "License");
-* you may not use this file except in compliance with the License.
-* You may obtain a copy of the License at
-*
-*    http://www.apache.org/licenses/LICENSE-2.0
-*
-* Unless required by applicable law or agreed to in writing, software
-* distributed under the License is distributed on an "AS IS" BASIS,
-* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-* See the License for the specific language governing permissions and
-* limitations under the License.
-*/
-
-import writeFile = require( './index' );
-
-const onWrite = ( error: Error | null ): void => {
-	if ( error ) {
-		throw error;
-	}
-};
-
-
-// TESTS //
-
-// The function does not have a return value...
-{
-	writeFile( './beep/boop.txt', 'beepboop', onWrite ); // $ExpectType void
-}
-
-// The compiler throws an error if the function is provided a first argument which is not a string, buffer, or file descriptor...
-{
-	writeFile( false, 'beepboop', onWrite ); // $ExpectError
-	writeFile( true, 'beepboop', onWrite ); // $ExpectError
-	writeFile( null, 'beepboop', onWrite ); // $ExpectError
-	writeFile( undefined, 'beepboop', onWrite ); // $ExpectError
-	writeFile( [], 'beepboop', onWrite ); // $ExpectError
-	writeFile( {}, 'beepboop', onWrite ); // $ExpectError
-	writeFile( ( x: number ): number => x, 'beepboop', onWrite ); // $ExpectError
-}
-
-// The compiler throws an error if the function is provided a second argument which is not a string or buffer...
-{
-	writeFile( './beep/boop.txt', false, onWrite ); // $ExpectError
-	writeFile( './beep/boop.txt', true, onWrite ); // $ExpectError
-	writeFile( './beep/boop.txt', null, onWrite ); // $ExpectError
-	writeFile( './beep/boop.txt', undefined, onWrite ); // $ExpectError
-	writeFile( './beep/boop.txt', [], onWrite ); // $ExpectError
-	writeFile( './beep/boop.txt', {}, onWrite ); // $ExpectError
-	writeFile( './beep/boop.txt', ( x: number ): number => x, onWrite ); // $ExpectError
-}
-
-// The compiler throws an error if the function is provided a callback argument which is not a function with the expected signature...
-{
-	writeFile( '/path/to/beepboop', 'beepboop', 'abc' ); // $ExpectError
-	writeFile( '/path/to/beepboop', 'beepboop', 1 ); // $ExpectError
-	writeFile( '/path/to/beepboop', 'beepboop', false ); // $ExpectError
-	writeFile( '/path/to/beepboop', 'beepboop', true ); // $ExpectError
-	writeFile( '/path/to/beepboop', 'beepboop', null ); // $ExpectError
-	writeFile( '/path/to/beepboop', 'beepboop', undefined ); // $ExpectError
-	writeFile( '/path/to/beepboop', 'beepboop', [] ); // $ExpectError
-	writeFile( '/path/to/beepboop', 'beepboop', {} ); // $ExpectError
-	writeFile( '/path/to/beepboop', 'beepboop', ( x: number ): number => x ); // $ExpectError
-}
-
-// The compiler throws an error if the function is provided an options argument which is not an object or string...
-{
-	writeFile( '/path/to/beepboop', 'beepboop', false, onWrite ); // $ExpectError
-	writeFile( '/path/to/beepboop', 'beepboop', true, onWrite ); // $ExpectError
-	writeFile( '/path/to/beepboop', 'beepboop', null, onWrite ); // $ExpectError
-	writeFile( '/path/to/beepboop', 'beepboop', undefined, onWrite ); // $ExpectError
-	writeFile( '/path/to/beepboop', 'beepboop', 123, onWrite ); // $ExpectError
-	writeFile( '/path/to/beepboop', 'beepboop', [], onWrite ); // $ExpectError
-	writeFile( '/path/to/beepboop', 'beepboop', ( x: number ): number => x, onWrite ); // $ExpectError
-}
-
-// The compiler throws an error if the function is provided an `encoding` option which is not a string or null...
-{
-	writeFile( '/path/to/beepboop', 'beepboop', { 'encoding': 123 }, onWrite ); // $ExpectError
-	writeFile( '/path/to/beepboop', 'beepboop', { 'encoding': true }, onWrite ); // $ExpectError
-	writeFile( '/path/to/beepboop', 'beepboop', { 'encoding': false }, onWrite ); // $ExpectError
-	writeFile( '/path/to/beepboop', 'beepboop', { 'encoding': [] }, onWrite ); // $ExpectError
-	writeFile( '/path/to/beepboop', 'beepboop', { 'encoding': {} }, onWrite ); // $ExpectError
-	writeFile( '/path/to/beepboop', 'beepboop', { 'encoding': ( x: number ): number => x }, onWrite ); // $ExpectError
-}
-
-// The compiler throws an error if the function is provided a `flag` option which is not a string...
-{
-	writeFile( '/path/to/beepboop', 'beepboop', { 'flag': 123 }, onWrite ); // $ExpectError
-	writeFile( '/path/to/beepboop', 'beepboop', { 'flag': true }, onWrite ); // $ExpectError
-	writeFile( '/path/to/beepboop', 'beepboop', { 'flag': false }, onWrite ); // $ExpectError
-	writeFile( '/path/to/beepboop', 'beepboop', { 'flag': null }, onWrite ); // $ExpectError
-	writeFile( '/path/to/beepboop', 'beepboop', { 'flag': [] }, onWrite ); // $ExpectError
-	writeFile( '/path/to/beepboop', 'beepboop', { 'flag': {} }, onWrite ); // $ExpectError
-	writeFile( '/path/to/beepboop', 'beepboop', { 'flag': ( x: number ): number => x }, onWrite ); // $ExpectError
-}
-
-// The compiler throws an error if the function is provided a `mode` option which is not a number...
-{
-	writeFile( '/path/to/beepboop', 'beepboop', { 'mode': 'abc' }, onWrite ); // $ExpectError
-	writeFile( '/path/to/beepboop', 'beepboop', { 'mode': true }, onWrite ); // $ExpectError
-	writeFile( '/path/to/beepboop', 'beepboop', { 'mode': false }, onWrite ); // $ExpectError
-	writeFile( '/path/to/beepboop', 'beepboop', { 'mode': null }, onWrite ); // $ExpectError
-	writeFile( '/path/to/beepboop', 'beepboop', { 'mode': [] }, onWrite ); // $ExpectError
-	writeFile( '/path/to/beepboop', 'beepboop', { 'mode': {} }, onWrite ); // $ExpectError
-	writeFile( '/path/to/beepboop', 'beepboop', { 'mode': ( x: number ): number => x }, onWrite ); // $ExpectError
-}
-
-// The compiler throws an error if the function is provided an unsupported number of arguments...
-{
-	writeFile(); // $ExpectError
-	writeFile( 'C:\\foo\\bar\\baz\\beepboop' ); // $ExpectError
-	writeFile( 'C:\\foo\\bar\\baz\\beepboop', 'beepboop' ); // $ExpectError
-}
-
-// Attached to main export is a `sync` method which returns an error or null...
-{
-	writeFile.sync( '/path/to/beepboop', 'beepboop' ); // $ExpectType Error | null
-}
-
-// The compiler throws an error if the `sync` method is provided a first argument which is not a string, buffer, or file descriptor...
-{
-	writeFile.sync( false, 'beepboop' ); // $ExpectError
-	writeFile.sync( true, 'beepboop' ); // $ExpectError
-	writeFile.sync( null, 'beepboop' ); // $ExpectError
-	writeFile.sync( undefined, 'beepboop' ); // $ExpectError
-	writeFile.sync( [], 'beepboop' ); // $ExpectError
-	writeFile.sync( {}, 'beepboop' ); // $ExpectError
-	writeFile.sync( ( x: number ): number => x, 'beepboop' ); // $ExpectError
-}
-
-// The compiler throws an error if the `sync` method is provided a second argument which is not a string or buffer...
-{
-	writeFile.sync( '/path/to/beepboop', false ); // $ExpectError
-	writeFile.sync( '/path/to/beepboop', true ); // $ExpectError
-	writeFile.sync( '/path/to/beepboop', null ); // $ExpectError
-	writeFile.sync( '/path/to/beepboop', undefined ); // $ExpectError
-	writeFile.sync( '/path/to/beepboop', [] ); // $ExpectError
-	writeFile.sync( '/path/to/beepboop', {} ); // $ExpectError
-	writeFile.sync( '/path/to/beepboop', ( x: number ): number => x ); // $ExpectError
-}
-
-// The compiler throws an error if the `sync` method is provided an options argument which is not an object or string...
-{
-	writeFile.sync( '/path/to/beepboop', 'beepboop', null ); // $ExpectError
-	writeFile.sync( '/path/to/beepboop', 'beepboop', true ); // $ExpectError
-	writeFile.sync( '/path/to/beepboop', 'beepboop', false ); // $ExpectError
-	writeFile.sync( '/path/to/beepboop', 'beepboop', 123 ); // $ExpectError
-	writeFile.sync( '/path/to/beepboop', 'beepboop', [] ); // $ExpectError
-	writeFile.sync( '/path/to/beepboop', 'beepboop', ( x: number ): number => x ); // $ExpectError
-}
-
-// The compiler throws an error if the `sync` method is provided an `encoding` option which is not a string or null...
-{
-	writeFile.sync( '/path/to/beepboop', 'beepboop', { 'encoding': 123 } ); // $ExpectError
-	writeFile.sync( '/path/to/beepboop', 'beepboop', { 'encoding': true } ); // $ExpectError
-	writeFile.sync( '/path/to/beepboop', 'beepboop', { 'encoding': false } ); // $ExpectError
-	writeFile.sync( '/path/to/beepboop', 'beepboop', { 'encoding': [] } ); // $ExpectError
-	writeFile.sync( '/path/to/beepboop', 'beepboop', { 'encoding': {} } ); // $ExpectError
-	writeFile.sync( '/path/to/beepboop', 'beepboop', { 'encoding': ( x: number ): number => x } ); // $ExpectError
-}
-
-// The compiler throws an error if the `sync` method is provided a `flag` option which is not a string...
-{
-	writeFile.sync( '/path/to/beepboop', 'beepboop', { 'flag': 123 } ); // $ExpectError
-	writeFile.sync( '/path/to/beepboop', 'beepboop', { 'flag': true } ); // $ExpectError
-	writeFile.sync( '/path/to/beepboop', 'beepboop', { 'flag': false } ); // $ExpectError
-	writeFile.sync( '/path/to/beepboop', 'beepboop', { 'flag': null } ); // $ExpectError
-	writeFile.sync( '/path/to/beepboop', 'beepboop', { 'flag': [] } ); // $ExpectError
-	writeFile.sync( '/path/to/beepboop', 'beepboop', { 'flag': {} } ); // $ExpectError
-	writeFile.sync( '/path/to/beepboop', 'beepboop', { 'flag': ( x: number ): number => x } ); // $ExpectError
-}
-
-// The compiler throws an error if the `sync` method is provided a `mode` option which is not a number...
-{
-	writeFile.sync( '/path/to/beepboop', 'beepboop', { 'mode': 'abc' } ); // $ExpectError
-	writeFile.sync( '/path/to/beepboop', 'beepboop', { 'mode': true } ); // $ExpectError
-	writeFile.sync( '/path/to/beepboop', 'beepboop', { 'mode': false } ); // $ExpectError
-	writeFile.sync( '/path/to/beepboop', 'beepboop', { 'mode': null } ); // $ExpectError
-	writeFile.sync( '/path/to/beepboop', 'beepboop', { 'mode': [] } ); // $ExpectError
-	writeFile.sync( '/path/to/beepboop', 'beepboop', { 'mode': {} } ); // $ExpectError
-	writeFile.sync( '/path/to/beepboop', 'beepboop', { 'mode': ( x: number ): number => x } ); // $ExpectError
-}
-
-// The compiler throws an error if the `sync` method is provided an unsupported number of arguments...
-{
-	writeFile.sync(); // $ExpectError
-	writeFile.sync( '/path/to/beepboop' ); // $ExpectError
-}
diff --git a/examples/fixtures/file.txt b/examples/fixtures/file.txt
deleted file mode 100644
index fae06e3..0000000
--- a/examples/fixtures/file.txt
+++ /dev/null
@@ -1 +0,0 @@
-beep boop
diff --git a/examples/index.js b/examples/index.js
deleted file mode 100644
index 654db09..0000000
--- a/examples/index.js
+++ /dev/null
@@ -1,41 +0,0 @@
-/**
-* @license Apache-2.0
-*
-* Copyright (c) 2018 The Stdlib Authors.
-*
-* Licensed under the Apache License, Version 2.0 (the "License");
-* you may not use this file except in compliance with the License.
-* You may obtain a copy of the License at
-*
-*    http://www.apache.org/licenses/LICENSE-2.0
-*
-* Unless required by applicable law or agreed to in writing, software
-* distributed under the License is distributed on an "AS IS" BASIS,
-* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-* See the License for the specific language governing permissions and
-* limitations under the License.
-*/
-
-'use strict';
-
-var join = require( 'path' ).join;
-var writeFile = require( './../lib' );
-
-var fpath = join( __dirname, 'fixtures', 'file.txt' );
-
-// Synchronously write data to a file:
-var err = writeFile.sync( fpath, 'beep boop\n', 'utf8' );
-// returns null
-
-console.log( err instanceof Error );
-// => false
-
-// Asynchronously write data to a file:
-writeFile( fpath, 'beep boop\n', onWrite );
-
-function onWrite( error ) {
-	if ( error ) {
-		console.error( 'Error: %s', error.message );
-	}
-	console.log( 'Success!' );
-}
diff --git a/lib/index.js b/lib/index.js
deleted file mode 100644
index 89511ee..0000000
--- a/lib/index.js
+++ /dev/null
@@ -1,60 +0,0 @@
-/**
-* @license Apache-2.0
-*
-* Copyright (c) 2018 The Stdlib Authors.
-*
-* Licensed under the Apache License, Version 2.0 (the "License");
-* you may not use this file except in compliance with the License.
-* You may obtain a copy of the License at
-*
-*    http://www.apache.org/licenses/LICENSE-2.0
-*
-* Unless required by applicable law or agreed to in writing, software
-* distributed under the License is distributed on an "AS IS" BASIS,
-* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-* See the License for the specific language governing permissions and
-* limitations under the License.
-*/
-
-'use strict';
-
-/**
-* Write data to a file.
-*
-* @module @stdlib/fs-write-file
-*
-* @example
-* var writeFile = require( '@stdlib/fs-write-file' );
-*
-* function onWrite( error ) {
-*     if ( error ) {
-*         throw error;
-*     }
-* }
-*
-* writeFile( './beep/boop.txt', 'beep boop\n', onWrite );
-*
-* @example
-* var writeFileSync = require( '@stdlib/fs-write-file' ).sync;
-*
-* var err = writeFileSync( './beep/boop.txt', 'beep boop\n' );
-* if ( err instanceof Error ) {
-*     throw err;
-* }
-*/
-
-// MODULES //
-
-var setReadOnly = require( '@stdlib/utils-define-nonenumerable-read-only-property' );
-var main = require( './main.js' );
-var sync = require( './sync.js' );
-
-
-// MAIN //
-
-setReadOnly( main, 'sync', sync );
-
-
-// EXPORTS //
-
-module.exports = main;
diff --git a/lib/main.js b/lib/main.js
deleted file mode 100644
index 01737c4..0000000
--- a/lib/main.js
+++ /dev/null
@@ -1,58 +0,0 @@
-/**
-* @license Apache-2.0
-*
-* Copyright (c) 2018 The Stdlib Authors.
-*
-* Licensed under the Apache License, Version 2.0 (the "License");
-* you may not use this file except in compliance with the License.
-* You may obtain a copy of the License at
-*
-*    http://www.apache.org/licenses/LICENSE-2.0
-*
-* Unless required by applicable law or agreed to in writing, software
-* distributed under the License is distributed on an "AS IS" BASIS,
-* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-* See the License for the specific language governing permissions and
-* limitations under the License.
-*/
-
-'use strict';
-
-// MODULES //
-
-var write = require( 'fs' ).writeFile;
-
-
-// MAIN //
-
-/**
-* Asynchronously writes data to a file.
-*
-* @param {(string|Buffer|integer)} file - file path or file descriptor
-* @param {(string|Buffer)} data - data to write
-* @param {(Object|string)} [options] - options
-* @param {Function} clbk - callback to invoke after writing data to a file
-*
-* @example
-* function onWrite( error ) {
-*     if ( error ) {
-*         throw error;
-*     }
-* }
-*
-* writeFile( './beep/boop.txt', 'beep boop\n', onWrite );
-*/
-function writeFile() {
-	var args;
-	var i;
-	args = [];
-	for ( i = 0; i < arguments.length; i++ ) {
-		args.push( arguments[ i ] );
-	}
-	write.apply( null, args );
-}
-
-
-// EXPORTS //
-
-module.exports = writeFile;
diff --git a/lib/sync.js b/lib/sync.js
deleted file mode 100644
index 5029104..0000000
--- a/lib/sync.js
+++ /dev/null
@@ -1,58 +0,0 @@
-/**
-* @license Apache-2.0
-*
-* Copyright (c) 2018 The Stdlib Authors.
-*
-* Licensed under the Apache License, Version 2.0 (the "License");
-* you may not use this file except in compliance with the License.
-* You may obtain a copy of the License at
-*
-*    http://www.apache.org/licenses/LICENSE-2.0
-*
-* Unless required by applicable law or agreed to in writing, software
-* distributed under the License is distributed on an "AS IS" BASIS,
-* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-* See the License for the specific language governing permissions and
-* limitations under the License.
-*/
-
-'use strict';
-
-// MODULES //
-
-var writeFile = require( 'fs' ).writeFileSync; // eslint-disable-line node/no-sync
-
-
-// MAIN //
-
-/**
-* Synchronously writes data to a file.
-*
-* @param {(string|Buffer|integer)} file - file path or file descriptor
-* @param {(string|Buffer)} data - data to write
-* @param {(Object|string)} [options] - options
-* @returns {(Error|null)} error object or null
-*
-* @example
-* var err = writeFileSync( './beep/boop.txt', 'beep boop\n' );
-* if ( err instanceof Error ) {
-*     throw err;
-* }
-*/
-function writeFileSync( file, data, options ) {
-	try {
-		if ( arguments.length > 2 ) {
-			writeFile( file, data, options );
-		} else {
-			writeFile( file, data );
-		}
-	} catch ( err ) {
-		return err;
-	}
-	return null;
-}
-
-
-// EXPORTS //
-
-module.exports = writeFileSync;
diff --git a/package.json b/package.json
index bbcaf37..660497c 100644
--- a/package.json
+++ b/package.json
@@ -1,5 +1,5 @@
 {
-  "name": "@stdlib/fs-write-file",
+  "name": "@stdlib/fs-write-file-cli",
   "version": "0.2.2",
   "description": "Write data to a file.",
   "license": "Apache-2.0",
@@ -16,21 +16,6 @@
   "bin": {
     "write-file": "./bin/cli"
   },
-  "main": "./lib",
-  "directories": {
-    "benchmark": "./benchmark",
-    "doc": "./docs",
-    "example": "./examples",
-    "lib": "./lib",
-    "test": "./test"
-  },
-  "types": "./docs/types",
-  "scripts": {
-    "test": "make test",
-    "test-cov": "make test-cov",
-    "examples": "make examples",
-    "benchmark": "make benchmark"
-  },
   "homepage": "https://stdlib.io",
   "repository": {
     "type": "git",
@@ -44,35 +29,18 @@
     "@stdlib/fs-read-file": "^0.2.2",
     "@stdlib/process-cwd": "^0.2.2",
     "@stdlib/process-read-stdin": "^0.2.2",
-    "@stdlib/utils-define-nonenumerable-read-only-property": "^0.2.2"
+    "@stdlib/fs-write-file": "0.2.2"
   },
   "devDependencies": {
     "@stdlib/assert-is-browser": "^0.2.2",
     "@stdlib/assert-is-windows": "^0.2.2",
-    "@stdlib/buffer-from-string": "^0.2.2",
     "@stdlib/process-exec-path": "^0.2.2",
     "@stdlib/string-replace": "^0.2.2",
     "tape": "git+https://github.com/kgryte/tape.git#fix/globby",
     "proxyquire": "^2.0.0",
     "istanbul": "^0.4.1",
-    "tap-min": "git+https://github.com/Planeshifter/tap-min.git",
-    "@stdlib/bench-harness": "^0.2.2"
+    "tap-min": "git+https://github.com/Planeshifter/tap-min.git"
   },
-  "engines": {
-    "node": ">=0.10.0",
-    "npm": ">2.7.0"
-  },
-  "os": [
-    "aix",
-    "darwin",
-    "freebsd",
-    "linux",
-    "macos",
-    "openbsd",
-    "sunos",
-    "win32",
-    "windows"
-  ],
   "keywords": [
     "stdlib",
     "stdfs",
diff --git a/test/dist/test.js b/test/dist/test.js
deleted file mode 100644
index a8a9c60..0000000
--- a/test/dist/test.js
+++ /dev/null
@@ -1,33 +0,0 @@
-/**
-* @license Apache-2.0
-*
-* Copyright (c) 2023 The Stdlib Authors.
-*
-* Licensed under the Apache License, Version 2.0 (the "License");
-* you may not use this file except in compliance with the License.
-* You may obtain a copy of the License at
-*
-*    http://www.apache.org/licenses/LICENSE-2.0
-*
-* Unless required by applicable law or agreed to in writing, software
-* distributed under the License is distributed on an "AS IS" BASIS,
-* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-* See the License for the specific language governing permissions and
-* limitations under the License.
-*/
-
-'use strict';
-
-// MODULES //
-
-var tape = require( 'tape' );
-var main = require( './../../dist' );
-
-
-// TESTS //
-
-tape( 'main export is defined', function test( t ) {
-	t.ok( true, __filename );
-	t.strictEqual( main !== void 0, true, 'main export is defined' );
-	t.end();
-});
diff --git a/test/test.js b/test/test.js
deleted file mode 100644
index 02fa50a..0000000
--- a/test/test.js
+++ /dev/null
@@ -1,38 +0,0 @@
-/**
-* @license Apache-2.0
-*
-* Copyright (c) 2018 The Stdlib Authors.
-*
-* Licensed under the Apache License, Version 2.0 (the "License");
-* you may not use this file except in compliance with the License.
-* You may obtain a copy of the License at
-*
-*    http://www.apache.org/licenses/LICENSE-2.0
-*
-* Unless required by applicable law or agreed to in writing, software
-* distributed under the License is distributed on an "AS IS" BASIS,
-* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-* See the License for the specific language governing permissions and
-* limitations under the License.
-*/
-
-'use strict';
-
-// MODULES //
-
-var tape = require( 'tape' );
-var writeFile = require( './../lib' );
-
-
-// TESTS //
-
-tape( 'main export is a function', function test( t ) {
-	t.ok( true, __filename );
-	t.strictEqual( typeof writeFile, 'function', 'main export is a function' );
-	t.end();
-});
-
-tape( 'attached to the main export is a method to synchronously write data to a file', function test( t ) {
-	t.strictEqual( typeof writeFile.sync, 'function', 'has method' );
-	t.end();
-});
diff --git a/test/test.main.js b/test/test.main.js
deleted file mode 100644
index 24c817b..0000000
--- a/test/test.main.js
+++ /dev/null
@@ -1,201 +0,0 @@
-/**
-* @license Apache-2.0
-*
-* Copyright (c) 2018 The Stdlib Authors.
-*
-* Licensed under the Apache License, Version 2.0 (the "License");
-* you may not use this file except in compliance with the License.
-* You may obtain a copy of the License at
-*
-*    http://www.apache.org/licenses/LICENSE-2.0
-*
-* Unless required by applicable law or agreed to in writing, software
-* distributed under the License is distributed on an "AS IS" BASIS,
-* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-* See the License for the specific language governing permissions and
-* limitations under the License.
-*/
-
-'use strict';
-
-// MODULES //
-
-var join = require( 'path' ).join;
-var tape = require( 'tape' );
-var readFile = require( '@stdlib/fs-read-file' ).sync;
-var IS_BROWSER = require( '@stdlib/assert-is-browser' );
-var string2buffer = require( '@stdlib/buffer-from-string' );
-var writeFileSync = require( './../lib/sync.js' );
-var writeFile = require( './../lib/main.js' );
-
-
-// VARIABLES //
-
-// Don't run tests in the browser...for now...
-var opts = {
-	'skip': IS_BROWSER // FIXME
-};
-var fpath = join( __dirname, 'fixtures', 'file.txt' );
-var DATA = readFile( fpath, 'utf8' );
-
-
-// FUNCTIONS //
-
-/**
-* Restores a fixture file.
-*
-* ## Notes
-*
-* -   Every function which has the **potential** to affect the fixture file should invoke this function immediately before calling `t.end()`.
-*
-* @private
-*/
-function restore() {
-	writeFileSync( fpath, DATA );
-}
-
-
-// TESTS //
-
-tape( 'main export is a function', function test( t ) {
-	t.ok( true, __filename );
-	t.strictEqual( typeof writeFile, 'function', 'main export is a function' );
-	t.end();
-});
-
-tape( 'the function writes data to a file (string)', opts, function test( t ) {
-	var expected = 'beep boop 1';
-	writeFile( fpath, 'beep boop 1', onWrite );
-
-	function onWrite( error ) {
-		var actual;
-		if ( error ) {
-			t.fail( error.message );
-		}
-		actual = readFile( fpath, 'utf8' );
-		t.strictEqual( actual, expected, 'file contains expected contents' );
-
-		restore();
-		t.end();
-	}
-});
-
-tape( 'the function writes data to a file (buffer)', opts, function test( t ) {
-	var expected = 'beep boop 2';
-	writeFile( fpath, string2buffer( 'beep boop 2' ), onWrite );
-
-	function onWrite( error ) {
-		var actual;
-		if ( error ) {
-			t.fail( error.message );
-		}
-		actual = readFile( fpath, 'utf8' );
-		t.strictEqual( actual, expected, 'file contains expected contents' );
-
-		restore();
-		t.end();
-	}
-});
-
-tape( 'the function writes data to a file using provided options (option string)', opts, function test( t ) {
-	var expected = 'beep boop 3';
-	writeFile( fpath, 'beep boop 3', 'utf8', onWrite );
-
-	function onWrite( error ) {
-		var actual;
-		if ( error ) {
-			t.fail( error.message );
-		}
-		actual = readFile( fpath, 'utf8' );
-		t.strictEqual( actual, expected, 'file contains expected contents' );
-
-		restore();
-		t.end();
-	}
-});
-
-tape( 'the function writes data to a file using provided options (option object)', opts, function test( t ) {
-	var expected;
-	var opts;
-
-	expected = 'beep boop 4';
-	opts = {
-		'encoding': 'utf8'
-	};
-	writeFile( fpath, 'beep boop 4', opts, onWrite );
-
-	function onWrite( error ) {
-		var actual;
-		if ( error ) {
-			t.fail( error.message );
-		}
-		actual = readFile( fpath, 'utf8' );
-		t.strictEqual( actual, expected, 'file contains expected contents' );
-
-		restore();
-		t.end();
-	}
-});
-
-tape( 'if the function encounters an error, the function returns the error', opts, function test( t ) {
-	var file = 'beepboopbapbop/dkfjldjfaklsjf/bdlfalfas/bkldflakfjas'; // non-existent directory path
-	writeFile( file, 'beepboopbapbop', onWrite );
-
-	function onWrite( error ) {
-		var expected;
-		var actual;
-
-		t.strictEqual( error instanceof Error, true, error.message );
-
-		expected = DATA;
-		actual = readFile( fpath, 'utf8' );
-		t.strictEqual( actual, expected, 'file contains expected contents' );
-
-		restore();
-		t.end();
-	}
-});
-
-tape( 'if the function encounters an error, the function returns the error (option string)', opts, function test( t ) {
-	var file = 'beepboopbapbop/dkfjldjfaklsjf/bdlfalfas/bkldflakfjas'; // non-existent directory path
-	writeFile( file, 'beepboopbapbop', 'utf8', onWrite );
-
-	function onWrite( error ) {
-		var expected;
-		var actual;
-
-		t.strictEqual( error instanceof Error, true, error.message );
-
-		expected = DATA;
-		actual = readFile( fpath, 'utf8' );
-		t.strictEqual( actual, expected, 'file contains expected contents' );
-
-		restore();
-		t.end();
-	}
-});
-
-tape( 'if the function encounters an error, the function returns the error (option object)', opts, function test( t ) {
-	var file;
-	var opts;
-
-	file = 'beepboopbapbop/dkfjldjfaklsjf/bdlfalfas/bkldflakfjas'; // non-existent directory path
-	opts = {
-		'encoding': 'utf8'
-	};
-	writeFile( file, 'beepboopbapbop', opts, onWrite );
-
-	function onWrite( error ) {
-		var expected;
-		var actual;
-
-		t.strictEqual( error instanceof Error, true, error.message );
-
-		expected = DATA;
-		actual = readFile( fpath, 'utf8' );
-		t.strictEqual( actual, expected, 'file contains expected contents' );
-
-		restore();
-		t.end();
-	}
-});
diff --git a/test/test.sync.js b/test/test.sync.js
deleted file mode 100644
index 87988f6..0000000
--- a/test/test.sync.js
+++ /dev/null
@@ -1,188 +0,0 @@
-/**
-* @license Apache-2.0
-*
-* Copyright (c) 2018 The Stdlib Authors.
-*
-* Licensed under the Apache License, Version 2.0 (the "License");
-* you may not use this file except in compliance with the License.
-* You may obtain a copy of the License at
-*
-*    http://www.apache.org/licenses/LICENSE-2.0
-*
-* Unless required by applicable law or agreed to in writing, software
-* distributed under the License is distributed on an "AS IS" BASIS,
-* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-* See the License for the specific language governing permissions and
-* limitations under the License.
-*/
-
-'use strict';
-
-// MODULES //
-
-var join = require( 'path' ).join;
-var tape = require( 'tape' );
-var readFile = require( '@stdlib/fs-read-file' ).sync;
-var IS_BROWSER = require( '@stdlib/assert-is-browser' );
-var string2buffer = require( '@stdlib/buffer-from-string' );
-var writeFile = require( './../lib/sync.js' );
-
-
-// VARIABLES //
-
-// Don't run tests in the browser...for now...
-var opts = {
-	'skip': IS_BROWSER // FIXME
-};
-var fpath = join( __dirname, 'fixtures', 'file.txt' );
-var DATA = readFile( fpath, 'utf8' );
-
-
-// FUNCTIONS //
-
-/**
-* Restores a fixture file.
-*
-* ## Notes
-*
-* -   Every function which has the **potential** to affect the fixture file should invoke this function immediately before calling `t.end()`.
-*
-* @private
-*/
-function restore() {
-	writeFile( fpath, DATA );
-}
-
-
-// TESTS //
-
-tape( 'main export is a function', function test( t ) {
-	t.ok( true, __filename );
-	t.strictEqual( typeof writeFile, 'function', 'main export is a function' );
-	t.end();
-});
-
-tape( 'the function writes data to a file (string)', opts, function test( t ) {
-	var expected;
-	var actual;
-
-	expected = 'beep boop 1';
-
-	writeFile( fpath, 'beep boop 1' );
-	actual = readFile( fpath, 'utf8' );
-
-	t.strictEqual( actual, expected, 'file contains expected data' );
-
-	restore();
-	t.end();
-});
-
-tape( 'the function writes data to a file (buffer)', opts, function test( t ) {
-	var expected;
-	var actual;
-
-	expected = 'beep boop 2';
-
-	writeFile( fpath, string2buffer( 'beep boop 2' ) );
-	actual = readFile( fpath, 'utf8' );
-
-	t.strictEqual( actual, expected, 'file contains expected data' );
-
-	restore();
-	t.end();
-});
-
-tape( 'the function writes data to a file using provided options (string)', opts, function test( t ) {
-	var expected;
-	var actual;
-
-	expected = 'beep boop 3';
-
-	writeFile( fpath, 'beep boop 3', 'utf8' );
-	actual = readFile( fpath, 'utf8' );
-
-	t.strictEqual( actual, expected, 'file contains expected data' );
-
-	restore();
-	t.end();
-});
-
-tape( 'the function writes data to a file using provided options (object)', opts, function test( t ) {
-	var expected;
-	var actual;
-	var opts;
-
-	expected = 'beep boop 4';
-
-	opts = {
-		'encoding': 'utf8'
-	};
-	writeFile( fpath, 'beep boop 4', opts );
-	actual = readFile( fpath, 'utf8' );
-
-	t.strictEqual( actual, expected, 'file contains expected data' );
-
-	restore();
-	t.end();
-});
-
-tape( 'if the function encounters an error, the function returns the error', opts, function test( t ) {
-	var expected;
-	var actual;
-	var file;
-	var err;
-
-	file = 'beepboopbapbop/dkfjldjfaklsjf/bdlfalfas/bkldflakfjas'; // non-existent directory path
-	err = writeFile( file, 'beepboopbapbop' );
-
-	t.strictEqual( err instanceof Error, true, err.message );
-
-	expected = DATA;
-	actual = readFile( fpath, 'utf8' );
-	t.strictEqual( actual, expected, 'file contains expected contents' );
-
-	restore();
-	t.end();
-});
-
-tape( 'if the function encounters an error, the function returns the error (option string)', opts, function test( t ) {
-	var expected;
-	var actual;
-	var file;
-	var err;
-
-	file = 'beepboopbapbop/dkfjldjfaklsjf/bdlfalfas/bkldflakfjas'; // non-existent directory path
-
-	err = writeFile( file, 'beepboopbapbop', 'utf8' );
-	t.strictEqual( err instanceof Error, true, err.message );
-
-	expected = DATA;
-	actual = readFile( fpath, 'utf8' );
-	t.strictEqual( actual, expected, 'file contains expected contents' );
-
-	restore();
-	t.end();
-});
-
-tape( 'if the function encounters an error, the function returns the error (option object)', opts, function test( t ) {
-	var expected;
-	var actual;
-	var file;
-	var opts;
-	var err;
-
-	file = 'beepboopbapbop/dkfjldjfaklsjf/bdlfalfas/bkldflakfjas'; // non-existent directory path
-
-	opts = {
-		'encoding': 'utf8'
-	};
-	err = writeFile( file, 'beepboopbapbop', opts );
-	t.strictEqual( err instanceof Error, true, err.message );
-
-	expected = DATA;
-	actual = readFile( fpath, 'utf8' );
-	t.strictEqual( actual, expected, 'file contains expected contents' );
-
-	restore();
-	t.end();
-});
