node_modules

# This is a pnpm workspace; pnpm-lock.yaml is authoritative
# Reject npm/yarn lockfiles to prevent accidental package-manager mixing
package-lock.json
yarn.lock

# Build outputs
**/build
**/dist
**/.react-router/
**/.react-router/types

# Environment files
.env
.env.local
.env.staging
.env.production

.cache

# Prisma
**/migrations/migration_lock.toml

tsconfig.tsbuildinfo

# Claude Code development notes (local only)
.claude-notes/

# Claude Code — personal settings (project-shared settings and skills are committed)
.claude/settings.local.json
.claude/.credentials*

**/coverage

# Benchmark results (regenerated on each run)
**/benchmarks/results.json

# Supabase
**/supabase/.branches
**/supabase/.temp
**/supabase/.env
.depot-local/

# OS
.DS_Store
test-results/

# Playwright
**/playwright-report/
**/playwright/.cache/

# Desktop app build artifacts
desktop-app/shelf-installer
desktop-app/portable

.vscode/*
!.vscode/settings.json
.worktrees

# Sentry Config File
.sentryclirc

.cert

# VitePress
apps/docs/.vitepress/cache
apps/docs/.vitepress/dist
.vercel

# Turborepo
.turbo

# Lefthook local overrides
lefthook-local.yml
.worktrees/
# Local binaries
.bin/

# Certificate backups
*.cert.bak/

node-compile-cache/

# Expo build/cache artifacts (root-level; apps/companion/.gitignore covers its own)
.expo/
