How kimj941002/pdbdatabase works
Protein Construct Builder is a Streamlit application for selecting proteins, collecting UniProt and PDB data, and inspecting structures and related annotations. Its main user workflow runs from protein selection through structure collection to filtered results and export; it also offers database questions with Claude and saved chat history. The graph preserves the indexed fetchers and analysis modules as product capabilities. Some orchestration is outside the excerpts, so uncertain links are omitted rather than inferred.
Main entry points: app.py Builder UI · llm_query.py AI Database Query · uniprot_fetcher.py Protein Fetcher · klifs_fetcher.py KLIFS Fetcher
Components 19
Application
- Builder UI
app.py - Legacy UI
archive_legacy_code/snapshots/app_v1_streamlit_dataframe.py
Data Collection
- Protein Fetcher
uniprot_fetcher.py - Structure Fetcher
pdb_fetcher.py - Complex Fetcher
complex_fetcher.py - KLIFS Fetcher
klifs_fetcher.py
Analysis and Enrichment
- Mutation Analyzer
mutation_analyzer.py - AI Database Query
llm_query.py
Persistence and Queries
- Protein Database
database.py - Chat History
chat_store.py - API Configuration
config.py - API Utilities
utils.py
Other components
- User
- UniProt API
- RCSB APIs
- KLIFS API
- SIFTS API
- Anthropic API
- SQLite
Connections 15
- User → Builder UI: uses
app.py - Builder UI → AI Database Query: queries
app.py - Builder UI → Structure Fetcher: collects structures
app.py - Protein Fetcher → UniProt API: fetches proteins
uniprot_fetcher.py - Protein Fetcher → RCSB APIs: searches structures
uniprot_fetcher.py - Structure Fetcher → RCSB APIs: fetches structures
pdb_fetcher.py - Complex Fetcher → RCSB APIs: fetches complex data
complex_fetcher.py - KLIFS Fetcher → KLIFS API: fetches kinase data
klifs_fetcher.py - KLIFS Fetcher → Protein Database: stores annotations
klifs_fetcher.py - Mutation Analyzer → SIFTS API: maps residues
mutation_analyzer.py - Mutation Analyzer → Protein Database: reads and stores
mutation_analyzer.py - AI Database Query → Anthropic API: requests answers
llm_query.py - AI Database Query → SQLite: runs SQL
llm_query.py - Chat History → SQLite: stores chats
- Builder UI → Chat History: saves chats
app.py