Skip to content

RodrigoPLCosta/PKPD_simulator

Repository files navigation

PKPD Simulator Logo

Simulador PK/PD de Antimicrobianos

Ferramenta educacional interativa para simulação farmacocinética de antimicrobianos hospitalares

Version Drugs Classes Tests License PWA Live Demo

🔗 Acessar o Simulador (Live Demo)


Sobre o projeto

Simulador farmacocinético interativo de antimicrobianos hospitalares, desenvolvido como ferramenta educacional para médicos, farmacêuticos, residentes e estudantes da área de saúde.

Calcula e exibe graficamente a curva de concentração sérica ao longo do tempo para 23 antimicrobianos de 11 classes, usando um modelo farmacocinético monocompartimental IV. Permite visualizar em tempo real como alterações na dose, intervalo, tempo de infusão e função renal impactam os parâmetros PK/PD preditores de eficácia clínica.

Autor: Rodrigo Pinheiro Leal Costa · 2026


Modelo farmacocinético

O motor de simulação utiliza um modelo monocompartimental de infusão IV intermitente:

  • Fase de infusão: C(t) = (R₀ / ke·Vd) × (1 - e^(-ke·t)), onde R₀ = dose/tempo de infusão
  • Fase pós-infusão: C(t) = C(end) × e^(-ke·(t - tInf))
  • Ajuste renal: a meia-vida é recalculada pela fração de eliminação renal e a TFG do paciente: t½adj = ln2 / (ke × (fr × GFR/120 + (1 - fr)))

A simulação gera pontos de concentração total e livre (fração não-ligada = 1 - ligação proteica) a cada 0.05h (ou 0.25h para teicoplanina), ao longo de 48h (168h para teicoplanina).

Parâmetros PK/PD calculados

Parâmetro Descrição Alvo clínico
fT > MIC (SS) Fração do intervalo posológico no steady-state em que a concentração livre supera o MIC Alvo primário para beta-lactâmicos
AUC₂₄/MIC Razão da área sob a curva em 24h pelo MIC Vancomicina 400–600 (IDSA 2020), linezolida, polimixina B
fCmax/MIC Razão do pico de concentração livre pelo MIC Aminoglicosídeos ≥8–10
Cmin (vale) Concentração mínima no steady-state Teicoplanina 15–30 mg/L

Antimicrobianos disponíveis (23 drogas, 11 classes)

Classe Fármacos
Carbapenens Meropenem, Imipenem, Ertapenem
Cefalosporinas Cefepima, Ceftazidima, Ceftazidima-Avibactam, Ceftriaxona
Penicilinas Piperacilina-Tazobactam, Ampicilina-Sulbactam, Oxacilina
Glicopeptídeos Vancomicina, Teicoplanina
Aminoglicosídeos Amicacina, Gentamicina
Lipopeptídeo Daptomicina
Oxazolidinona Linezolida
Polimixina Polimixina B
Nitroimidazol Metronidazol
Fluoroquinolonas Levofloxacino, Ciprofloxacino
Antifúngicos Anfotericina B Lipossomal, Voriconazol, Fluconazol

Funcionalidades

  • Seleção rápida de dose: botões com apresentações comerciais (ex: Pipe/Tazo 2.25g, 3.375g, 4.5g)
  • Intervalos discretos: botões de intervalo posológico relevantes para cada droga (ex: q4h, q6h, q8h)
  • Presets de infusão: bolus, infusão estendida e contínua, contextuais por fármaco
  • Dose por peso: drogas dosadas por mg/kg (vancomicina, aminoglicosídeos, daptomicina, polimixina B, teicoplanina) recalculam automaticamente ao alterar o peso
  • Dose de ataque: seção colapsável (opcional), expande automaticamente para drogas que usam loading dose
  • Ajuste renal: classificação automática da TFG (ARC, Normal, DRC G2–G5, Diálise) com recomendações contextuais
  • Cenários clínicos: presets rápidos (ex: Mero IE 3h, Vanco ataque, Sepse + ARC)
  • Comparação de regimes: salve uma curva como referência e compare visualmente com o regime atual
  • Gráfico interativo: Chart.js com labels de Cmax/Cmin, destaque fT>MIC, AUC shading, dose markers
  • Card PK: parâmetros farmacocinéticos (Vd, t½, ligação proteica, eliminação renal) e referências
  • Painel educacional: informações clínicas, efeitos adversos e limitações do modelo por droga
  • Tema claro/escuro: alternância de tema com um clique
  • Undo (Ctrl+Z): desfazer última alteração de parâmetro

Tecnologia

Componente Detalhes
Arquitetura Modular ES Modules (Vite 6)
Gráficos Chart.js 4.4.1 (CDN)
Tipografia Google Fonts — DM Sans + JetBrains Mono
Testes Vitest — 90 testes (35 unitários + 55 integração)
CI/CD GitHub Actions — test → build → deploy GitHub Pages
PWA Service Worker para uso offline
Responsivo Desktop (sidebar + gráfico) e mobile (stacked)

Estrutura do projeto

PKPD_simulator/
├── index.html                  ← HTML principal (Vite entry point)
├── vite.config.js              ← Configuração do Vite
├── package.json                ← Dependências e scripts
├── .gitignore
├── README.md
├── LICENSE
├── public/                     ← Arquivos estáticos (copiados sem hash)
│   ├── manifest.json
│   ├── sw.js
│   └── icons/
├── src/
│   ├── main.js                 ← Entry point — importa CSS e inicializa módulos
│   ├── drugs/
│   │   ├── index.js            ← Monta D (23 drogas), SCENARIOS, ADV
│   │   ├── educContent.js      ← Conteúdo educacional por droga e classe
│   │   ├── carbapenems.json
│   │   ├── cephalosporins.json
│   │   ├── penicillins.json
│   │   ├── glycopeptides.json
│   │   ├── aminoglycosides.json
│   │   ├── lipopeptides.json
│   │   ├── oxazolidinones.json
│   │   ├── polymyxins.json
│   │   ├── nitroimidazoles.json
│   │   ├── fluoroquinolones.json
│   │   └── antifungals.json
│   ├── engine/
│   │   ├── pkEngine.js         ← Motor PK monocompartimental
│   │   ├── pkpdTargets.js      ← Alertas e alvos PK/PD
│   │   └── renalAdjust.js      ← Classificação GFR e ajustes renais
│   ├── ui/
│   │   ├── controls.js         ← Lógica de UI e binding de controles
│   │   ├── chart.js            ← Configuração e atualização do gráfico
│   │   ├── theme.js            ← Toggle tema claro/escuro
│   │   └── educPanel.js        ← Painel educacional expansível
│   └── styles/
│       ├── theme.css           ← Variáveis CSS (claro/escuro)
│       ├── base.css            ← Layout, tipografia, responsivo
│       ├── chart.css           ← Estilização do gráfico
│       └── controls.css        ← Sidebar, botões, sliders
├── tests/
│   ├── pkEngine.test.js        ← 35 testes unitários do motor PK
│   └── integration.test.js     ← 55 testes de integração
└── .github/
    └── workflows/
        └── deploy.yml          ← CI/CD: test → build → deploy

Desenvolvimento local

# Clonar o repositório
git clone https://github.com/RodrigoPLCosta/PKPD_simulator.git
cd PKPD_simulator

# Instalar dependências
npm install

# Servidor de desenvolvimento (hot reload)
npm run dev

# Rodar testes
npm test

# Build de produção
npm run build

# Preview do build
npm run preview

Instalação como PWA

iPhone (Safari): Abra o site → botão Compartilhar → "Adicionar à Tela de Início"

Android (Chrome): Abra o site → banner automático ou menu ⋮ → "Instalar aplicativo"

Após instalação, o app funciona offline.


Referências bibliográficas

Parâmetros farmacocinéticos populacionais validados contra literatura:

  • Craig WA. Pharmacokinetic/pharmacodynamic parameters: rationale for antibacterial dosing of mice and men. Clin Infect Dis. 1998;26(1):1-10.
  • Drusano GL. Antimicrobial pharmacodynamics: critical interactions of 'bug and drug'. Nat Rev Microbiol. 2004;2(4):289-300.
  • Roberts JA, Lipman J. Pharmacokinetic issues for antibiotics in the critically ill patient. Clin Pharmacokinet. 2009;48(2):89-124.
  • Mouton JW, Vinks AA. Pharmacokinetic/pharmacodynamic modelling of antibacterials in vitro and in vivo using bacterial growth and kill kinetics. Clin Pharmacokinet. 2005;44(2):201-210.
  • Nicolau DP. Optimizing outcomes with antimicrobial therapy through pharmacodynamic profiling. J Infect Chemother. 2003;9(4):292-296.
  • Rybak MJ et al. Therapeutic monitoring of vancomycin for serious methicillin-resistant Staphylococcus aureus infections: a revised consensus guideline. Am J Health-Syst Pharm. 2020;77(11):835-864.
  • Hanai Y et al. Optimal trough concentration of teicoplanin for the treatment of MRSA infections. J Antimicrob Chemother. 2022.
  • Wilson AP. Clinical pharmacokinetics of teicoplanin. Clin Pharmacokinet. 2000;39(3):167-183.
  • Pais GM et al. Polymyxin B dosing in renal impairment. Pharmacotherapy. 2022.
  • Sandri AM et al. Population pharmacokinetics of intravenous polymyxin B. Clin Infect Dis. 2013;57(4):524-531.
  • Dvorchik B et al. Daptomycin pharmacokinetics and safety following administration of escalating doses once daily. J Clin Pharmacol. 2003;43(6):612-620.
  • Stalker DJ, Jungbluth GL. Clinical pharmacokinetics of linezolid. Clin Pharmacokinet. 2003;42(13):1129-1140.
  • Barclay ML et al. Adaptive resistance to tobramycin in Pseudomonas aeruginosa. J Antimicrob Chemother. 1996;37(2):253-263.
  • Taccone FS et al. Revisiting the loading dose of amikacin for patients with severe sepsis and septic shock. Crit Care. 2010;14(2):R53.
  • Forrest A et al. Pharmacodynamics of intravenous ciprofloxacin in seriously ill patients. Antimicrob Agents Chemother. 1993;37(5):1073-1081.
  • Lepak AJ, Andes DR. Antifungal pharmacokinetics and pharmacodynamics. Cold Spring Harb Perspect Med. 2015;5(5):a019653.

Como citar

Se você utilizar este simulador em atividades acadêmicas ou educacionais, por favor cite:

@software{costa2026pkpd,
  author    = {Costa, Rodrigo Pinheiro Leal},
  title     = {Simulador PK/PD de Antimicrobianos: ferramenta interativa para simulação farmacocinética hospitalar},
  version   = {1.3},
  year      = {2026},
  url       = {https://rodrigoplcosta.github.io/PKPD_simulator/},
  note      = {Ferramenta educacional — não substitui avaliação clínica individualizada}
}

ABNT: COSTA, Rodrigo Pinheiro Leal. Simulador PK/PD de Antimicrobianos: ferramenta interativa para simulação farmacocinética hospitalar. Versão 1.3. 2026. Disponível em: https://rodrigoplcosta.github.io/PKPD_simulator/


Limitações do modelo

⚠️ Este simulador é uma ferramenta EDUCACIONAL e NÃO substitui avaliação clínica individualizada nem monitoramento terapêutico de drogas (TDM).

O motor de simulação utiliza um modelo monocompartimental de infusão IV intermitente com parâmetros populacionais de adultos. Isso implica limitações relevantes:

  • Volume de distribuição (Vd) fixo: O simulador utiliza um Vd populacional único (L/kg), mas na prática clínica o Vd varia amplamente entre pacientes. Em pacientes críticos (sepse, queimados, cirurgia cardíaca com CEC, ECMO), o Vd pode aumentar 50–100% devido a expansão do terceiro espaço, ressuscitação volêmica agressiva e aumento da permeabilidade capilar (Roberts JA, Lipman J. Clin Pharmacokinet. 2009;48(2):89-124). Isso resulta em concentrações séricas reais significativamente menores que as estimadas pelo simulador, especialmente para drogas hidrofílicas (beta-lactâmicos, aminoglicosídeos, vancomicina, polimixina B).

  • Fase de distribuição (α) não modelada: Para drogas bicompartimentais (vancomicina, teicoplanina, aminoglicosídeos), o Cmax pós-infusão pode ser superestimado em 30–50%. O AUC e o vale são mais confiáveis neste simulador que o Cmax.

  • Ligação proteica constante: O modelo assume ligação proteica fixa, mas em hipoalbuminemia (comum em UTI, cirrose, síndrome nefrótica) a fração livre de drogas altamente ligadas (ertapenem, ceftriaxona, oxacilina, daptomicina, teicoplanina) pode aumentar 2–4×, alterando eficácia e toxicidade reais.

  • Clearance aumentado (ARC): Pacientes jovens, politraumatizados ou com sepse hiperdinâmica podem apresentar ARC (Augmented Renal Clearance, TFG > 130 mL/min), levando a subdosagem de antimicrobianos com eliminação renal predominante. O simulador permite ajuste de GFR, mas não modela a variabilidade intra-individual ao longo do tempo.

  • Obesidade: O simulador não calcula peso ajustado (ABW = IBW + 0.4 × [TBW − IBW]) para aminoglicosídeos nem peso ideal para outras classes. Em obesos mórbidos, o Vd por kg de peso total é diferente do Vd por kg de peso ideal, e as curvas simuladas podem divergir significativamente da realidade.

  • Populações especiais: Não validado para neonatos, crianças, gestantes, pacientes em ECMO, CRRT (hemodiafiltração contínua) ou diálise intermitente. A farmacocinética dessas populações difere substancialmente dos parâmetros populacionais adultos utilizados.

Para decisões clínicas, recomenda-se TDM com software Bayesiano (PrecisePK, DoseMeRx, InsightRx) e avaliação individualizada por farmacêutico clínico ou equipe de stewardship.


Licença

Este projeto está licenciado sob a MIT License.


⚠️ Aviso: Simulador educacional — não substitui avaliação clínica individualizada e monitoramento terapêutico de drogas (TDM).

About

Interactive PK/PD simulator for 18 hospital antimicrobials — educational tool for dose optimization

Topics

Resources

License

Contributing

Stars

Watchers

Forks

Packages

 
 
 

Contributors