# ============================================
# Node.js / Vue / Vite
# ============================================

# 依赖目录
node_modules/
.pnp
.pnp.js

# 构建输出
dist/
dist-ssr/
build/
*.local

# Vite
.vite/
vite.config.js.timestamp-*

# 缓存
.cache/
.parcel-cache/

# ============================================
# Python
# ============================================

# Python 字节码
__pycache__/
*.py[cod]
*$py.class
*.so

# Python 虚拟环境
venv/
env/
ENV/
env.bak/
venv.bak/
.venv/

# Python 包管理
*.egg
*.egg-info/
dist/
build/
eggs/
.eggs/
wheels/
*.whl

# Python 环境变量
.env
.env.local
.env.*.local

# Jupyter Notebook
.ipynb_checkpoints

# pytest
.pytest_cache/
.coverage
htmlcov/

# mypy
.mypy_cache/
.dmypy.json
dmypy.json

# ============================================
# 生成的 PDF 文件
# ============================================

# 生成的 PDF 报告（保留示例数据文件）
*.pdf
!public/example.json

# ============================================
# IDE / 编辑器
# ============================================

# Visual Studio Code
.vscode/
!.vscode/extensions.json
*.code-workspace

# JetBrains IDEs (WebStorm, PyCharm, etc.)
.idea/
*.iml
*.iws
*.ipr

# Sublime Text
*.sublime-project
*.sublime-workspace

# Vim
*.swp
*.swo
*~
.vim/

# Emacs
*~
\#*\#
.\#*

# ============================================
# 操作系统
# ============================================

# macOS
.DS_Store
.AppleDouble
.LSOverride
Icon
._*
.DocumentRevisions-V100
.fseventsd
.Spotlight-V100
.TemporaryItems
.Trashes
.VolumeIcon.icns
.com.apple.timemachine.donotpresent
.AppleDB
.AppleDesktop
Network Trash Folder
Temporary Items
.apdisk

# Windows
Thumbs.db
Thumbs.db:encryptable
ehthumbs.db
ehthumbs_vista.db
*.stackdump
[Dd]esktop.ini
$RECYCLE.BIN/
*.cab
*.msi
*.msix
*.msm
*.msp
*.lnk

# Linux
*~
.fuse_hidden*
.directory
.Trash-*
.nfs*

# ============================================
# 日志文件
# ============================================

# 日志
*.log
npm-debug.log*
yarn-debug.log*
yarn-error.log*
pnpm-debug.log*
lerna-debug.log*
.pnpm-debug.log*

# ============================================
# 临时文件
# ============================================

# 临时文件
*.tmp
*.temp
*.bak
*.backup
*.swp
*.swo
*~

# 压缩文件（可选，根据项目需要）
# *.zip
# *.tar
# *.tar.gz
# *.rar

# ============================================
# 测试覆盖率
# ============================================

# 测试覆盖率报告
coverage/
.nyc_output/
*.lcov

# ============================================
# 其他
# ============================================

# 锁文件（可选，根据团队约定）
# package-lock.json
# yarn.lock
# pnpm-lock.yaml

# 自动生成的文件
auto-imports.d.ts
components.d.ts

# 本地配置文件
.env.local
.env.development.local
.env.test.local
.env.production.local

# 调试文件
.vscode/launch.json
.vscode/settings.json

# 文档构建
docs/_build/
site/

# 数据库文件（如果有）
*.db
*.sqlite
*.sqlite3

# 敏感信息
secrets/
*.pem
*.key
*.cert
*.md
!README.md
