This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
- Do not commit changes automatically. Wait for explicit user request to commit.
GitHub Action to set up Vite+ (vp) with dependency caching support. This action installs Vite+ globally via official install scripts and optionally caches project dependencies based on lock file detection.
# Build (required before committing - outputs to dist/)
vp run build
# Type check
vp run typecheck
# Run tests
vp run test
# Run tests in watch mode
vp run test:watch
# Check (lint + format)
vp run check
vp run check:fixImportant: Always run vp run check:fix and vp run build before committing - the dist/index.mjs must be committed.
This is a GitHub Action with main and post execution phases (defined in action.yml):
-
Main phase (
src/index.ts→runMain):- Install Vite+ globally via bash/PowerShell install scripts
- Set up Node.js version via
vp env useif specified - Restore dependency cache if enabled
- Run
vp installif requested
-
Post phase (
src/index.ts→runPost):- Save dependency cache if enabled
src/inputs.ts- Parse and validate action inputs using Zod schemassrc/install-viteplus.ts- Install Vite+ globally via official install scriptssrc/cache-restore.ts/src/cache-save.ts- Dependency caching via@actions/cachesrc/run-install.ts- Executevp installwith optional cwd/argssrc/types.ts- Shared types, enums, and Zod schemassrc/utils.ts- Lock file detection, package manager cache path resolution
Auto-detects package manager from lock files: pnpm-lock.yaml, package-lock.json, yarn.lock
Tests are colocated with source files (e.g., src/inputs.test.ts). Run with vp run test.