Imported from turquoisehealth/pricepoints (
AGENTS.md). Install upstream withnpx skills add turquoisehealth/pricepoints. Copyright stays with the author.
Price Points Research Monorepo
What This Is
Price Points creates quantitative, public research on healthcare pricing using Turquoise Health's healthcare price transparency data. This research helps illuminate actual healthcare costs, pricing variation, and market dynamics (e.g., 340B drug pricing, delivery costs, regional disparities).
Monorepo structure:
- projects/ - Time-stamped research projects (e.g.,
2025_04_delivery_costs) following the template at 0000_00_proj_template/ - analyses/ - One-off exploratory analyses
- tq/ - Shared Python package for database access and utilities
Standard project layout:
projects/YYYY_MM_project_name/
├── pyproject.toml # Dependencies
├── analysis.qmd # Main Quarto notebook
├── ingest.py # Data ingestion
├── queries/ # SQL files
└── data/ # Input/output data
Tech Stack
- Python - Version in
.python-version(managed withuv, never pip/poetry) - Data - Polars ONLY (never pandas or numpy)
- Database - Trino via
tqpackage connectors - Analysis - Quarto (
.qmd) for R-based visualization - SQL - Trino dialect (uppercase keywords, explicit aliases)
Critical Rules
- Polars only - Do not import or suggest pandas/numpy for data manipulation
- Use
uv- For all dependency management (uv sync,uv add, etc.) - Minimal file creation - Only create files when absolutely necessary
- No documentation - Never proactively create README or .md files
- Use Claude plugins - When working with Python, invoke the relevant /astral: for uv, ty, and ruff to ensure best practices are followed
- Pre-commit handles linting - Don't worry about code style, it's automated
Development Workflow
- Navigate to project directory
- Run
uv syncto install dependencies - Write SQL queries in
queries/folder - Implement data ingestion in
ingest.py(usestqpackage for Trino) - Analyze in
analysis.qmd(Quarto notebook) - Let pre-commit hooks handle formatting on commit
Common Patterns
-
Database access:
from tq.db import get_trino_connection conn = get_trino_connection() -
Starting a new project: Copy 0000_00_proj_template/ to
projects/YYYY_MM_name/ -
Testing: Run
pytestin tq/ directory when modifying shared utilities -
Exploration: Use the trino skill to explore available data