# ===== Python =====
__pycache__/
*.py[cod]
*$py.class
*.so
*.egg
*.egg-info/
.eggs/
build/
dist/
sdist/
wheels/
pip-wheel-metadata/
share/python-wheels/
installs/

# 测试 / 类型检查 / lint 缓存
.pytest_cache/
.mypy_cache/
.ruff_cache/
.pyre/
.pytype/
.dmypy.json
dmypy.json

# 虚拟环境
.venv/
venv/
env/
ENV/
.python-version

# ===== Node / 前端（React + Vite）=====
# 依赖（npm install 生成，不入库）
node_modules/
# 构建产物（Vite build 输出，dist/ 已被上方 Python 段覆盖，此处显式声明更清晰）
dist/
# Vite 缓存
.vite/
# TypeScript 增量构建缓存
*.tsbuildinfo
# npm/pnpm/yarn 锁文件按需保留；如需忽略锁文件取消下行注释
# package-lock.json
# pnpm-lock.yaml
# yarn.lock
# 前端环境变量（含 API 地址等，不入库）
.env.local
.env.*.local
# 编辑器本地配置
.eslintcache

# ===== 环境变量与密钥（含数据库密码等，切勿入库）=====
.env
.env.*
!.env.example
*.env
secrets/
*.pem
*.key

# ===== IDE / 编辑器 =====
.vscode/
.idea/
*.swp
*.swo
*~
.project
.settings/

# ===== 操作系统 =====
.DS_Store
.DS_Store?
._*
.Spotlight-V100
.Trashes
ehthumbs.db
Thumbs.db
desktop.ini

# ===== Docker（镜像/卷/构建产物，不入库）=====
# 容器运行时数据
.docker/
# 本地 PostgreSQL 数据与初始化副本（历史遗留）
.pg-init/
*.sql.gz

# ===== 日志与临时文件 =====
*.log
logs/
tmp/
*.tmp
*.bak

# ===== Jupyter =====
.ipynb_checkpoints/

# ===== 项目本地脚本/快照 =====
*.local
