# =============================================================================
# EDGAR - Experimental Design Generator and Randomiser
# Comprehensive .gitignore
# =============================================================================

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

# Distribution / packaging
build/
develop-eggs/
dist/
downloads/
eggs/
.eggs/
lib/
lib64/
parts/
sdist/
var/
wheels/
share/python-wheels/
*.egg-info/
.installed.cfg
*.egg
MANIFEST

# PyInstaller
*.manifest
*.spec

# Installer logs
pip-log.txt
pip-delete-this-directory.txt

# Unit test / coverage
htmlcov/
.tox/
.nox/
.coverage
.coverage.*
.cache
nosetests.xml
coverage.xml
*.cover
*.py,cover
.hypothesis/
.pytest_cache/
cover/

# Translations
*.mo
*.pot

# Environments
.env
.venv
env/
venv/
ENV/
env.bak/
venv.bak/
edgarvenv/

# Spyder project settings
.spyderproject
.spyproject

# Rope project settings
.ropeproject

# mkdocs / static site build output
/site

# mypy
.mypy_cache/
.mypy_output/

# Pyre
.pyre/

# pytype
.pytype/

# Cython debug symbols
cython_debug/

# ---- Node.js (if any tooling uses it) ----
node_modules/
npm-debug.log*
yarn-debug.log*
yarn-error.log*
.npm
.yarn/

# ---- IDE / Editor ----
# VS Code
.vscode/
*.code-workspace

# PyCharm
.idea/
*.iml
*.iws
*.ipr

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

# Vim
*.swp
*.swo
*~
.*.sw[a-z]
Session.vim
.netrwhist

# Emacs
\#*\#
/.emacs.desktop
/.emacs.desktop.lock
auto-save-list
tramp
.\#*

# Jupyter Notebook
.ipynb_checkpoints
*.ipynb

# ---- Operating System ----
# macOS
.DS_Store
.AppleDouble
.LSOverride
._*
.Spotlight-V100
.Trashes

# Windows
Thumbs.db
Thumbs.db:encryptable
ehthumbs.db
ehthumbs_vista.db
*.stackdump
[Dd]esktop.ini
$RECYCLE.BIN/

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

# ---- Docker ----
# Don't ignore Dockerfile or docker-compose.yml — those should be tracked.
# Ignore Docker volumes / local data only.
docker-data/

# ---- Project-specific ----
# Generated output files (users should generate these themselves)
download/
output/
results/

# Legacy Excel workbooks are large binaries — uncomment if you want to exclude
# them from the repo and provide them via a separate download instead:
# legacy_excel/*.xls
# legacy_excel/*.xlsx
# legacy_excel/*.xlsm

# VBA extraction artifacts (keep vba_*.txt in repo for reference)
# vba_*.txt

# Worklog (agent context, not for distribution)
worklog.md

# Skills directory (agent context, not for distribution)
skills/

# Upload directory (temporary user uploads)
upload/

# Coverage data
.coverage
coverage_html/

# Static site build output (scripts/build_static.py)
site/
