feat: initial project scaffold

pyproject.toml (Python 3.12, uv), codex/ package (config, db, models),
infra/ (docker-compose + schema), .env.example, .gitignore, README.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Tarik Moussa
2026-06-04 11:19:10 +02:00
commit e7ac7766a5
13 changed files with 2136 additions and 0 deletions

46
pyproject.toml Normal file
View File

@@ -0,0 +1,46 @@
[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"
[project]
name = "codex"
version = "0.1.0"
description = "Personal knowledge base for scientific papers — provenance, citation graph, semantic search."
readme = "README.md"
requires-python = ">=3.12"
dependencies = [
"psycopg[binary]>=3.1",
"pgvector>=0.3",
"pydantic-settings>=2",
"sentence-transformers>=3",
"typer>=0.12",
"httpx>=0.27",
"tenacity>=8",
]
[project.scripts]
codex = "codex.cli:app"
[dependency-groups]
dev = [
"ruff>=0.4",
"mypy>=1.10",
"pytest>=8",
"pytest-mock>=3",
]
[tool.ruff]
target-version = "py312"
line-length = 100
[tool.ruff.lint]
select = ["E", "F", "I", "UP", "B", "SIM"]
ignore = []
[tool.mypy]
python_version = "3.12"
strict = true
ignore_missing_imports = true
[tool.pytest.ini_options]
testpaths = ["tests"]