| .PHONY: install run | |
| install: | |
| poetry install --no-root | |
| run: | |
| poetry run streamlit run app.py | |
| build-tree: | |
| poetry run python -c 'from main import build_tree_cache; build_tree_cache()' | |
| test-search: | |
| poetry run python -c 'from main import test_search; test_search()' | |
| test-semantic-search: | |
| poetry run python -c 'from main import test_semantic_search; test_semantic_search()' | |
| fetch-data: | |
| mkdir -p data | |
| mkdir -p data/addendum | |
| mkdir -p data/code_descriptions | |
| mkdir -p data/poa_exempt_codes | |
| mkdir -p data/table_index | |
| @if [ ! -f data/code_descriptions/code_descriptions.zip ]; then \ | |
| wget https://ftp.cdc.gov/pub/Health_Statistics/NCHS/Publications/ICD10CM/2025/ICD10-CM%20Code%20Descriptions%202025.zip -O data/code_descriptions/code_descriptions.zip; \ | |
| unzip data/code_descriptions/code_descriptions.zip -d data/code_descriptions; \ | |
| fi | |
| @if [ ! -f data/addendum/addendum.zip ]; then \ | |
| wget https://ftp.cdc.gov/pub/Health_Statistics/NCHS/Publications/ICD10CM/2025/ICD10cm-addendum-2025.zip -O data/addendum/addendum.zip; \ | |
| unzip data/addendum/addendum.zip -d data/addendum; \ | |
| fi | |
| @if [ ! -f data/table_index/table_index.zip ]; then \ | |
| wget https://ftp.cdc.gov/pub/Health_Statistics/NCHS/Publications/ICD10CM/2025/icd10cm-table-index-2025.zip -O data/table_index/table_index.zip; \ | |
| unzip data/table_index/table_index.zip -d data/table_index; \ | |
| fi | |
| @if [ ! -f data/poa_exempt_codes/poa_exempt_codes.zip ]; then \ | |
| wget https://ftp.cdc.gov/pub/Health_Statistics/NCHS/Publications/ICD10CM/2025/POAexemptCodesFY25.zip -O data/poa_exempt_codes/poa_exempt_codes.zip; \ | |
| unzip data/poa_exempt_codes/poa_exempt_codes.zip -d data/poa_exempt_codes; \ | |
| fi | |
| @if [ ! -f data/guidelines.pdf ]; then \ | |
| wget https://ftp.cdc.gov/pub/Health_Statistics/NCHS/Publications/ICD10CM/2025/icd-10-cm-FY25-guidelines-october%20-2024.pdf -O data/guidelines.pdf; \ | |
| fi |