oxfmt: prettier plugins
Aim to enable the use of existing Prettier plugins like `prettier-plugin-svelte`. The current ecosystem primarily consists of two types of plugins. - For supporting files not supported by Prettier (original motivation of plugin) - `prettier-plugin-svelte`, `prettier-plugin-ruby`, etc - For overriding behaviors already handled by Prettier - `prettier-plugin-sort-imports`, `prettier-plugin-tailwindcss`, etc This issue is addressing the former one. Regarding the latter, since JS/TS files are formatted by `oxc_formatter`, we need to consider how to handle this. For sort-imports, implementation has already begun on the `oxc_formatter` side. However, we want to keep it usable for files like Svelte or Vue, etc. <details> <summary>Original plan</summary> ### Plan - JS: Update napi function `setupConfig` to return `{ parsers, extensions, filenames }[]` - Load plugins, parse `languages` and return them - Need to search `overrides` too, `plugins` may only appear later - Rust: Allow that `languages` in support.rs and call Prettier with `parser` - JS: If possible, loads plugin only for targeted file (Need to support (astro|svelte)-in-js?) ### Consideration - Plugins often rely on `prettier` internally - https://github.com/sveltejs/prettier-plugin-svelte/blob/d509d0fdfe5a6ba679a7efb28583272dc74e7a81/src/index.ts#L2 - We are bundling `prettier` in `oxfmt` - But if bundled, plugins cannot find our bundled `prettier` - This means extra `prettier` install needed to work
Posted by Boshen on Nov 13, 2025, 10:30 AM
Tags
Related issues
- Add 65536 size support for maps
- TypeScript 7.1 Iteration Plan
- nvim-treeconfig: upstream nvim-treesitter
- Add the "action" and "method" attributes to <button>
- [FEATURE] Support multiple Connector accounts (same connector, different accounts) in Claude and Claude Code on the web (claude.ai/code)
- > We were imposed GitHub for so many exercises!
Raise real-world problems, find people facing the same issue, and discuss solutions.2,000 issues0 comments
support (Software)
Add 65536 size support for maps
TypeScript 7.1 Iteration Plan
nvim-treeconfig: upstream nvim-treesitter
Add the "action" and "method" attributes to <button>
[FEATURE] Support multiple Connector accounts (same connector, different accounts) in Claude and Claude Code on the web (claude.ai/code)
> We were imposed GitHub for so many exercises!
Add support for Visual Studio 2026 Integration
Support for Helm v4
oxfmt: prettier plugins
Aim to enable the use of existing Prettier plugins like `prettier-plugin-svelte`. The current ecosystem primarily consists of two types of plugins. - For supporting files not supported by Prettier (original motivation of plugin) - `prettier-plugin-svelte`, `prettier-plugin-ruby`, etc - For overriding behaviors already handled by Prettier - `prettier-plugin-sort-imports`, `prettier-plugin-tailwindcss`, etc This issue is addressing the former one. Regarding the latter, since JS/TS files are formatted by `oxc_formatter`, we need to consider how to handle this. For sort-imports, implementation has already begun on the `oxc_formatter` side. However, we want to keep it usable for files like Svelte or Vue, etc. <details> <summary>Original plan</summary> ### Plan - JS: Update napi function `setupConfig` to return `{ parsers, extensions, filenames }[]` - Load plugins, parse `languages` and return them - Need to search `overrides` too, `plugins` may only appear later - Rust: Allow that `languages` in support.rs and call Prettier with `parser` - JS: If possible, loads plugin only for targeted file (Need to support (astro|svelte)-in-js?) ### Consideration - Plugins often rely on `prettier` internally - https://github.com/sveltejs/prettier-plugin-svelte/blob/d509d0fdfe5a6ba679a7efb28583272dc74e7a81/src/index.ts#L2 - We are bundling `prettier` in `oxfmt` - But if bundled, plugins cannot find our bundled `prettier` - This means extra `prettier` install needed to work
Comments (0)
No comments yet. Start the discussion.