# SPDX-FileCopyrightText: 2026 PythonWoods <dev@pythonwoods.dev>
# SPDX-License-Identifier: Apache-2.0

# ============================================================================
# Zenzic — Git Ignore Rules
# ============================================================================

# ────────────────────────────────────────────────────────────────────────────
# Environment Configuration
# ────────────────────────────────────────────────────────────────────────────
.env
.env.local
.env.*.local
!.env.example
!.env.template

# ────────────────────────────────────────────────────────────────────────────
# AI Tools & IDE Integrations
# ────────────────────────────────────────────────────────────────────────────
.gemini/
.copilot/
.cursor/
.ai/
.claude/
.agent/
.deepcode/
.redteam/

# ────────────────────────────────────────────────────────────────────────────
# Python
# ────────────────────────────────────────────────────────────────────────────
__pycache__/
*.py[cod]
*$py.class
*.so

# Distribution / packaging
build/
dist/
*.egg-info/
*.egg
MANIFEST
.installed.cfg

# PyInstaller
*.manifest
*.spec

# ────────────────────────────────────────────────────────────────────────────
# Virtual Environments
# ────────────────────────────────────────────────────────────────────────────
.venv/
venv/
env/
ENV/

# ────────────────────────────────────────────────────────────────────────────
# uv
# ────────────────────────────────────────────────────────────────────────────
# uv.lock is committed (application lock file — do not ignore)
.python-version
.uv/                 # uv internal cache

# ────────────────────────────────────────────────────────────────────────────
# Hatch
# ────────────────────────────────────────────────────────────────────────────
.hatch/

# ────────────────────────────────────────────────────────────────────────────
# Testing & Coverage
# ────────────────────────────────────────────────────────────────────────────
.pytest_cache/
.pytest_tmp/
.hypothesis/
.coverage
.coverage.*
htmlcov/
coverage/
coverage.xml
coverage-*.xml
coverage-*.json
.tox/
.nox/
mutmut*
!mutmut_pytest.ini
# ↑ Keep mutmut_pytest.ini tracked: isolated pytest config for the mutation session.
.mutmut-cache/
mutants/

# ────────────────────────────────────────────────────────────────────────────
# Type Checking, Linting & Reports
# ────────────────────────────────────────────────────────────────────────────
.mypy_cache/
.dmypy.json
dmypy.json
.pyre/
.ruff_cache/
.cache/
zenzic_report/      # Optional HTML report exports from zenzic
.zenzic_cache/      # Reserved for a future linter cache
# Zenzic quality scores — derived local metadata, never committed
.zenzic-score.json

# ────────────────────────────────────────────────────────────────────────────
# MkDocs, Zensical & Documentation
# ────────────────────────────────────────────────────────────────────────────
site/
pdf/                # with-pdf output directory
.mkdocs_cache/
.zensical_cache/    # Reserved for a future Zensical cache
*.pdf               # Exclude locally generated PDF manuals from commits
# Build artifact — generated by run_demo.sh and CI; never committed
docs/assets/brand-kit.zip

# ────────────────────────────────────────────────────────────────────────────
# Web & JS (Optional but recommended)
# ────────────────────────────────────────────────────────────────────────────
node_modules/
.npm/

# ────────────────────────────────────────────────────────────────────────────
# Logs & Temporary Files
# ────────────────────────────────────────────────────────────────────────────
*.log
logs/
*.tmp
tmp/
temp/
.artifacts/
artifacts/

# ────────────────────────────────────────────────────────────────────────────
# IDEs & Editors
# ────────────────────────────────────────────────────────────────────────────
# Visual Studio Code
.vscode/
!.vscode/extensions.json
!.vscode/settings.json

# IntelliJ IDEA / PyCharm
.idea/
*.iml

# Vim
*.swp
*.swo
*~
.*.sw?

# Emacs
\#*\#
.\#*

# ────────────────────────────────────────────────────────────────────────────
# Operating System
# ────────────────────────────────────────────────────────────────────────────
# macOS
.DS_Store
.AppleDouble
.LSOverride
._*

# Windows
Thumbs.db
ehthumbs.db
Desktop.ini

# Linux
.Trash-*/

# ────────────────────────────────────────────────────────────────────────────
# CI/CD
# ────────────────────────────────────────────────────────────────────────────
.github/workflows/.secrets
.gitlab-ci-local/
.wrangler/              # Cloudflare Wrangler local cache

# ============================================================================
# Local scratch notes (never committed)
# ============================================================================
.temp/

# Lucide icon set — downloaded at build time by nox/CI, not committed
overrides/.icons/lucide/

# ============================================================================
# End of .gitignore
# ============================================================================
