Set up the project skeleton per PLAN.md §4: - src/ package: identifiers, disease, drugs, scoring, provenance with pydantic schemas and confidence-tier logic (working); data-pull/compute functions stubbed per their build week - 5 starter notebooks (01-05) with PLAN-referenced steps - tests/test_scoring.py: tier-assignment tests pass; scoring reference test xfail until Week 3 - docs/: recovery_test_report, data_sources, known_limitations skeletons - pyproject.toml (requires-python >=3.11,<3.14), .gitignore, README - data/ tree preserved via .gitkeep; raw/processed/results gitignored Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
47 lines
1.3 KiB
TOML
47 lines
1.3 KiB
TOML
[build-system]
|
|
requires = ["setuptools>=68", "wheel"]
|
|
build-backend = "setuptools.build_meta"
|
|
|
|
[project]
|
|
name = "reverso-mvp"
|
|
version = "0.1.0"
|
|
description = "Sickle cell drug repurposing MVP — disease signature + drug profile matching via CMap-style connectivity scoring"
|
|
readme = "README.md"
|
|
requires-python = ">=3.11,<3.14"
|
|
license = { text = "Proprietary" }
|
|
authors = [{ name = "Reverso" }]
|
|
|
|
dependencies = [
|
|
"pandas>=2.0",
|
|
"numpy>=1.24",
|
|
"scipy>=1.11",
|
|
"requests>=2.31",
|
|
"chembl_webresource_client>=0.10", # ChEMBL API client
|
|
"GEOparse>=2.0", # GEO dataset access
|
|
"pydeseq2>=0.4", # Differential expression in Python
|
|
"cmapPy>=4.0", # Reference CMap connectivity implementation
|
|
"pyarrow>=14.0", # Parquet I/O
|
|
"jupyter>=1.0",
|
|
"matplotlib>=3.7", # Sanity-check plots
|
|
"seaborn>=0.13",
|
|
"pydantic>=2.0", # Schema validation for signatures/profiles
|
|
"mygene>=3.2", # Gene symbol -> Entrez/Ensembl mapping
|
|
]
|
|
|
|
[project.optional-dependencies]
|
|
dev = [
|
|
"pytest>=8.0",
|
|
"ruff>=0.5",
|
|
]
|
|
|
|
[tool.setuptools.packages.find]
|
|
where = ["."]
|
|
include = ["src*"]
|
|
|
|
[tool.ruff]
|
|
line-length = 100
|
|
target-version = "py311"
|
|
|
|
[tool.pytest.ini_options]
|
|
testpaths = ["tests"]
|