Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
66 changes: 65 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1 +1,65 @@
.env
COMMS.md
# --- Byte-compiled / optimized / DLL files ---
**/__pycache__/
*.py[cod]
*$py.class

# --- Virtual Environments ---
# It's best practice to keep these out of your repo
.venv/
venv/
ENV/
env/
build/
develop-eggs/
dist/
downloads/
eggs/
.eggs/
lib/
lib64/
parts/
sdist/
var/
wheels/
share/python-wheels/
*.egg-info/
.installed.cfg
*.egg
MANIFEST

# --- Unit test / coverage reports ---
htmlcov/
.tox/
.nox/
.coverage
.coverage.*
.cache
nosetests.xml
coverage.xml
*.cover
*.pyo
.hypothesis/
.pytest_cache/
cover/

# --- Jupyter Notebooks ---
.ipynb_checkpoints

# --- Environment Variables & Secrets ---
# NEVER commit these files
.env
.venv
env.ini
.env.test
.secrets

# --- IDE Specific Files ---
.vscode/
.idea/
*.swp
*.swo

# --- OS Generated Files ---
.DS_Store
Thumbs.db
39 changes: 39 additions & 0 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
repos:
# 1. Standard Hygiene
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v4.5.0
hooks:
- id: trailing-whitespace
- id: end-of-file-fixer
- id: check-yaml
- id: check-added-large-files
args: ['--maxkb=500']

# 3. Ruff: The All-in-One (Linter + Formatter + Isort)
- repo: https://github.com/astral-sh/ruff-pre-commit
rev: v0.1.11
hooks:
- id: ruff
args: [ --fix, --exit-non-zero-on-fix ]
- id: ruff-format

# 4. Mypy: Static Type Checking (Crucial for FastAPI/Pydantic)
- repo: https://github.com/pre-commit/mirrors-mypy
rev: v1.8.0
hooks:
- id: mypy
additional_dependencies: [
"types-requests",
"pydantic",
"fastapi"
]
args: [--ignore-missing-imports, --scripts-are-modules]

# 5. Poetry: Dependency Integrity
- repo: local
hooks:
- id: poetry-check
name: poetry check
entry: poetry check
language: system
pass_filenames: false
Loading