Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🖥️ System Monitor

Monitor de sistema em tempo real que exibe métricas de CPU, memória e disco.

Funcionalidades

  • CPU: Uso percentual e número de núcleos
  • Memória: Uso percentual, total e utilizado (GB)
  • Disco: Uso percentual, espaço total e utilizado (GB)
  • Atualização automática a cada 2 segundos
  • Suporte a duas interfaces: Streamlit e Gradio

Requisitos

  • Python 3.14+
  • uv (recomendado) ou pip

Instalação

# Clone o repositório
git clone https://github.com/seu-usuario/System-Monitor.git
cd System-Monitor

# Instale as dependências com uv
uv sync

Uso

Interface Streamlit (padrão)

streamlit run main.py

Interface Gradio

Edite main.py e altere a UI utilizada:

# ui = StreamlitUI()
ui = GradioUI()

Depois execute:

python main.py

Estrutura do Projeto

System-Monitor/
├── core/
│   ├── monitor.py      # Orquestrador das métricas
│   └── metrics/
│       ├── base.py     # Classe base para métricas
│       ├── cpu.py      # Métrica de CPU
│       ├── memory.py   # Métrica de memória
│       └── disk.py     # Métrica de disco
├── ui/
│   ├── base.py         # Interface base para UIs
│   ├── streamlit_ui.py # Implementação Streamlit
│   └── gradio_ui.py    # Implementação Gradio
├── main.py             # Ponto de entrada
└── pyproject.toml      # Configuração do projeto

Dependências

  • psutil - Coleta de métricas do sistema
  • streamlit - Interface web interativa
  • gradio - Interface web alternativa

About

Repositório destinado para projeto prático que visa aplicar conceitos de POO de forma didática. Integração da biblioteca psutil com os frameworks de interface (Gradio e Streamlit) para monitoramento de métricas de desempenho.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages