SvelteKit Quick Start

Quick start guide for Codecov Bundle Analysis and SvelteKit.

Step 1: Install the Codecov SvelteKit Plugin

To install the @codecov/sveltekit-plugin to your project, use the following commands.

npm install @codecov/sveltekit-plugin --save-dev
yarn add @codecov/sveltekit-plugin --dev
pnpm add @codecov/sveltekit-plugin --save-dev

Step 2: Configure the bundler plugin

Add the plugin to the end of your plugins array found inside your vite.config.ts file, and pass your configuration.

You can find a Codecov upload token on the Configuration page for your repository, under General, or your organization settings page in the Codecov UI. For more information, see the documentation.

import { sveltekit } from "@sveltejs/kit/vite";
import { defineConfig } from "vite";
import { codecovSvelteKitPlugin } from "@codecov/sveltekit-plugin";

export default defineConfig({
  plugins: [
    sveltekit(),
    // Put the Codecov SvelteKit plugin after all other plugins
    codecovSvelteKitPlugin({
      enableBundleAnalysis: true,
      bundleName: "example-sveltekit-bundle",
      uploadToken: process.env.CODECOV_TOKEN,
    }),
  ],
});

Step 3: Commit and push your latest changes

The plugin requires at least one commit to be made to properly upload bundle analysis information to Codecov.

git add -A && git commit -m "Add Codecov bundler plugin" && git push

Step 4: Build the Application

When building your application the plugin will automatically upload the stats information to Codecov.

npm run build
yarn run build
pnpm run build

Sending Telemetry Data on Issues and Performance

By default, Codecov's bundler plugins collects telemetry data on issues and performance metrics internally, enabling us to analyze the plugins for performance and monitor potential issues.

You can opt-out of sending this telemetry data by setting the options.telemetry option in the plugin config to false. For example if you're using the SvelteKit plugin, the Codecov plugin configuration might look like the following:

codecovSvelteKitPlugin({
  enableBundleAnalysis: true,
  bundleName: "example-sveltekit-bundle",
  uploadToken: process.env.CODECOV_TOKEN,
  telemetry: false // <- Setting to `false`
  // ... other options
})