# ===================
# Dependencies
# ===================
node_modules/
.pnp/
.pnp.js
.yarn/

# ===================
# Build Outputs
# ===================
dist/
release/
out/
build/
*.tgz

# Electron-specific
*.asar

# ===================
# Database Files
# ===================
# SQLite databases (local development data)
*.db
*.db-journal
*.db-shm
*.db-wal
*.sqlite
*.sqlite3

# Drizzle ORM
drizzle/
migrations/

# ===================
# Environment & Secrets
# ===================
.env
.env.local
.env.development
.env.test
.env.production
.env.*.local

# ===================
# IDE & Editor
# ===================
.idea/
*.swp
*.swo
*.sublime-workspace
*.sublime-project
*.code-workspace

# Keep .vscode for shared settings but ignore personal files
.vscode/*
!.vscode/settings.json
!.vscode/tasks.json
!.vscode/launch.json
!.vscode/extensions.json

# ===================
# OS Generated Files
# ===================
.DS_Store
.DS_Store?
._*
.Spotlight-V100
.Trashes
ehthumbs.db
Thumbs.db
Desktop.ini

# ===================
# TypeScript
# ===================
*.tsbuildinfo
tsconfig.tsbuildinfo

# ===================
# Logs & Debug
# ===================
*.log
logs/
npm-debug.log*
yarn-debug.log*
yarn-error.log*
lerna-debug.log*
.npm/

# Electron crash reports
crash-reports/

# ===================
# Testing
# ===================
coverage/
.nyc_output/
*.lcov
test-results/
playwright-report/

# ===================
# Temporary Files
# ===================
tmp/
temp/
*.tmp
*.temp
*.bak

# User data (created at runtime)
userData/

# ===================
# Package Manager Locks (keep one)
# ===================
# Uncomment if you want to ignore lock files
# package-lock.json
# yarn.lock
# pnpm-lock.yaml

# ===================
# Optional: macOS/Linux Electron builds on Windows
# ===================
# *.dmg
# *.AppImage
# *.deb
# *.rpm
