voidzero-dev / voidzero-dev/vite-plus

Improve security defaults for `vp install` and other commands when using `npm`

Abierto
#1,419 4 comentarios 1 reacción 0 asignados Ver en GitHub
pending triage
Lenguaje dominante
Rust
Estrellas
5.8k
Forks
262
Merge medio
23 h 41 min
PR fusionados (30 d)
138

Descripción

### Description

It'd be nice if something could be done in vite-plus specifically to ensure secure defaults if a user is using npm.

See https://nesbitt.io/2026/03/31/npms-defaults-are-bad.html for examples.

### Suggested solution

For safety reasons, we should probably force `vp install` (when not passed a specific package to add) to map to `npm ci`, or at least maybe `npm install --prefer-offline`?

### Alternative

_No response_

### Additional context

It may also be a good idea to have `vp env doctor` point the user to various more-secure options as well, for example using min-release-age if not set, blocking scripts from running on-package-install (`--ignore-scripts`), and so on.

### Validations

- [x] Read the [Contributing Guidelines](https://github.com/voidzero-dev/vite-plus/blob/main/CONTRIBUTING.md).
- [x] Confirm this request is for Vite+ itself and not for Vite, Vitest, tsdown, Rolldown, or Oxc.
- [x] Check that there isn't already an issue requesting the same feature.

Guía de contribución

Abrir la guía de contribución

Línea de trabajo

Comienza en los puntos de entrada de los comandos `vp install` y `vp env doctor` y, a continuación, rastrea cómo las operaciones respaldadas por npm seleccionan los valores predeterminados. Aclara si el alcance consiste en asignar `vp install` sin paquetes a `npm ci`, usar `--prefer-offline` o añadir indicaciones de seguridad, como una antigüedad mínima de las versiones y scripts ignorados; se considera terminado cuando los maintainers hayan acordado un alcance definido y su comportamiento esté cubierto por pruebas relevantes.

Escrito por el modelo de indexación a partir del texto del issue.

Evaluación

Área
cli, security
Tipo de issue
Nueva funcionalidad
Dificultad
4/5
Tiempo estimado
3-5 días
Estado de actividad
Tranquilo
Claridad
Bastante claro
Aptitud para principiantes
42/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.