@svelte-check-rs/darwin-arm64
v0.9.5
Published
svelte-check-rs platform binary
Readme
svelte-check-rs
A high-performance, Rust-powered diagnostic engine designed as a drop-in replacement for svelte-check.
Note: This tool only supports Svelte 5+. For Svelte 4 or earlier, use the official svelte-check.
Features
- 🚀 Fast: 10-100x faster than
svelte-checkthrough Rust's zero-cost abstractions and parallel processing - ✅ Accurate: Matches
svelte-checkdiagnostics, including Svelte compiler errors via bun - 🔄 Compatible: Drop-in CLI replacement, identical output formats
- 🔧 Maintainable: Clean separation of concerns, comprehensive test suite
Installation
npm (recommended)
npm install -D svelte-check-rsThe npm package uses platform-specific optional dependencies to provide the binary. If you install with --no-optional, re-enable optional dependencies or use the shell/PowerShell installers below.
Then add to your package.json scripts:
{
"scripts": {
"check": "svelte-check-rs"
}
}Or run directly with npx:
npx svelte-check-rsmacOS / Linux
curl --proto '=https' --tlsv1.2 -LsSf https://github.com/pheuter/svelte-check-rs/releases/latest/download/svelte-check-rs-installer.sh | shWindows (PowerShell)
irm https://github.com/pheuter/svelte-check-rs/releases/latest/download/svelte-check-rs-installer.ps1 | iexUsage
# Check current directory
svelte-check-rs
# Check specific directory
svelte-check-rs --workspace ./my-project
# Watch mode
svelte-check-rs --watch
# Different output formats
svelte-check-rs --output json
svelte-check-rs --output machine
svelte-check-rs --output human-verboseRequirements
svelte-check-rs expects tsgo to be available from your workspace node_modules. Install it via:
npm install -D @typescript/native-previewSome package managers (for example, bun) may auto-install peer dependencies, but explicit installation is always supported.
CLI Options
| Option | Description |
|--------|-------------|
| --workspace <PATH> | Working directory (default: .) |
| --output <FORMAT> | Output format: human, human-verbose, json, machine |
| --tsconfig <PATH> | Path to tsconfig.json |
| --threshold <LEVEL> | Minimum severity: error, warning |
| --watch | Watch mode |
| --preserveWatchOutput | Don't clear screen in watch mode |
| --fail-on-warnings | Exit with error on warnings |
| --ignore <PATTERNS> | Glob patterns to ignore |
| --skip-tsgo | Skip TypeScript type-checking |
| --tsgo-version | Show installed tsgo version + path |
| --bun-version | Show installed bun version + path |
| --bun-update[=<VER>] | Update bun to latest or specific version |
| --debug-paths | Show resolved binaries (tsgo, bun, svelte-kit) |
Caching: svelte-check-rs writes transformed files and tsgo incremental build info to node_modules/.cache/svelte-check-rs/. Cache invalidation is automatic: dependency changes (lockfiles, node_modules markers) clear the entire cache, and source file changes are handled via content-addressed writes.
Project Structure
crates/
├── svelte-parser/ # Lexer + parser + AST types
├── source-map/ # Position tracking and mapping
├── svelte-transformer/ # Svelte → TypeScript transformation
├── svelte-diagnostics/ # A11y and component checks
├── tsgo-runner/ # tsgo process management
├── bun-runner/ # bun-managed Svelte compiler bridge
└── svelte-check-rs/ # CLI binaryDevelopment
# Build all crates
cargo build
# Run tests
cargo test
# Run clippy
cargo clippy --all-targets -- -D warnings
# Format code
cargo fmtLicense
MIT License - see LICENSE for details.
