@sentry/cloudflare/vite: Add a default export for the Vite plugin
@JPeer264 is already working on this.
Since Sep 20, 2026.
Assessment
This issue has not been assessed yet.
Description
Description
Add a default export to the @sentry/cloudflare/vite subpath, as an alias of sentryCloudflareVitePlugin, so the plugin can be imported under any name:
// vite.config.ts
import { cloudflare } from '@cloudflare/vite-plugin';
import sentry from '@sentry/cloudflare/vite';
import { defineConfig } from 'vite';
export default defineConfig({
plugins: [cloudflare(), sentry()],
});
sentryCloudflareVitePlugin stays the documented name, so this is additive and breaks nothing.
// packages/cloudflare/src/vite/index.ts
export default sentryCloudflareVitePlugin;
Why
- Most Vite plugins default-export, for example
@vitejs/plugin-react,vinextandnitro/vite. A default export matches what users expect at that place in the config. - The call site reads better with a short local name:
plugins: [cloudflare(), sentry()]. - There is precedent in this repo:
@sentry/astrodefault-exports its integration, and@sentry/nuxtits module.
Notes
- The
./vitesubpath currently also declares arequirecondition. In CJS, a default export is reached asrequire('@sentry/cloudflare/vite').default. The comment at the top ofsrc/vite/index.tssays the CJS entry cannot resolve anyway (@sentry/server-utils/orchestrion/vitehas norequirecondition), and Vite configs are ESM in practice, so this is acceptable. - Sentry's other Vite plugins (
@sentry/vite-plugin, SvelteKit, SolidStart) use named exports only, so this makes the Cloudflare one the exception. The named export stays, and docs keep using it. - The subpath exports more than the plugin (the options type today), so the JSDoc on the default export should state that it is an alias of
sentryCloudflareVitePlugin.
Scope
export default sentryCloudflareVitePlugin;inpackages/cloudflare/src/vite/index.ts, with JSDoc.- A test asserting the default export is the same function as the named one.
- Optionally a docs snippet showing the short import.
- Dominant language
- TypeScript
- Stars
- 8.7k
- Forks
- 1.9k
- Avg merge
- 1d 18h
- Merged PRs (30d)
- 543
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from getsentry/sentry-javascript
-
Browser Waiting for: Product Owner
Difficulty 2/5 1-3 hours Newbie friendliness 85/100
getsentry/sentry-javascript#24577 · 1 comment ·
-
Task
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
getsentry/sentry-javascript#24558 · 1 comment ·
-
Task
Difficulty 1/5 Under an hour Newbie friendliness 90/100
getsentry/sentry-javascript#24557 · 1 comment ·
-
Task
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
getsentry/sentry-javascript#24556 · 1 comment ·
-
Task
Difficulty 1/5 1-3 hours Newbie friendliness 90/100
getsentry/sentry-javascript#24555 · 1 comment ·
All issues in getsentry/sentry-javascript
Similar issues
-
enhancement
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
dennys-bd/agent-hive#184 ·
-
Add: hunch Open
Difficulty 2/5 1-3 hours Newbie friendliness 74/100
AbdelStark/awesome-typesafe#104 ·
-
ai-observability bug team/ai-observability
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
vicharanashala/fln#563 ·