Skip to content

Add instructions on writing Vite/Vitest/Rolldown/Oxlint plugins while using Vite+ #3288

Open

Description

@KTrain5169

Documentation is

  • Missing
  • Outdated
  • Confusing
  • Not sure

Explain in Detail

It is currently a bit confusing to figure out how to properly manage the dependencies of Vite/Vitest/Rolldown/Oxlint when writing plugins for each tool but using Vite+ for the source repository. Vite is the only one that I kind of figured out, but the others are a bit too confusing.

Your Suggestion for Changes

There should be a section, something like "Writing Plugins", that explains how to properly write a plugin such that it works when you are using Vite+ on your repo but still installs correctly with non-Vite+ consumers.

Relevant Page

No response

Reproduction (Optional)

No response

Steps to reproduce (Optional)

No response

Activity

  1. voidzero-bot commented on Oct 30, 2026

    @voidzero-bot
    • Reproduced: Skipped — not a Vite+ bug report (documentation/feature request)
    • Exploration: No
    • Unit Test: No — documentation request, not a code bug
    • Priority: P1: chore. This issue requests new documentation rather than reporting incorrect behavior, so it doesn't change any user-facing runtime functionality.

    This issue is a feature/documentation suggestion asking for a "Writing Plugins" guide for Vite, Vitest, Rolldown, and Oxlint. Since it does not describe incorrect Vite+ behavior, there is no bug path to reproduce. I recorded the request and noted that the underlying need appears to be guidance on plugin dependency declarations (dependencies vs. peerDependencies) so that plugin packages work for both Vite+ and non-Vite+ consumers.

    I wasn't able to find a fix, but I identified some areas that may be relevant. A future docs addition could live under docs/guide/ and cover package relationships between vite-plus, vite, vitest, rolldown, and oxlint, including how Vite+ bundled versions interact with user-installed copies (packages/cli/src/utils/terminal.ts and docs configuration may be useful touchpoints).

    Full Triage Report

    Triage Report: Issue #3288

    Issue Summary

    Title: Add instructions on writing Vite/Vitest/Rolldown/Oxlint plugins while using Vite+

    Type: Documentation request / feature suggestion

    Reporter: KTrain5169

    Labels: documentation

    Expected vs. Actual Behavior

    • Expected (reporter's suggestion): There should be a "Writing Plugins" section in the Vite+ documentation that explains how to write plugins for Vite, Vitest, Rolldown, and Oxlint in a way that works when the plugin's source repository uses Vite+, while still installing correctly for non-Vite+ consumers.
    • Actual: No such documentation section currently exists, and the reporter found the dependency management for these tools confusing (especially Vitest, Rolldown, and Oxlint).

    Environment

    • Vite+ v1.4.0
    • Node.js v24.22.1
    • pnpm v12.11.2
    • OS: Linux x64 (runner)

    Reproduction Path and Commands

    This issue is a documentation/feature request, not a bug report. There is no project or command to reproduce. A documentation-only request does not produce incorrect runtime behavior, an error, or a stack trace.

    No reproduction project, repository, or StackBlitz link was provided by the reporter.

    Result

    Skipped — not-actionable

    The issue asks for new documentation/a new feature (a "Writing Plugins" guide), rather than reporting incorrect Vite+ behavior. Triage reproduction is scoped to determining whether a reported bug reproduces. Since this is not a Vite+ bug report, it falls outside the reproducible-bug triage path.

    Observations Useful for Diagnosis

    • The request is well-scoped and specific about the four tools it wants covered: Vite, Vitest, Rolldown, and Oxlint.
    • It hints at a real onboarding friction point: how to express plugin dependencies so that the package works both for Vite+ users and for non-Vite+ consumers.
    • A future doc addition might address:
      • Which packages to list as dependencies vs. peerDependencies for each tool.
      • How Vite+ bundled versions interact with user-installed versions.
      • Whether plugin packages need a "vite"/"vitest"/etc. peer dependency or can rely on Vite+ re-exporting them.
    • Because no behavior is broken, triage cannot reproduce an error here.

    This report was made by an LLM. The analysis may be wrong, and the potential fix might not work, but is intended as a starting point for exploring the issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Fields

    Priority

    None yet

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions