Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

📡 Central de Monitoramento Minecraft

Python Streamlit PostgreSQL Pandas

Uma ferramenta de monitoramento em tempo real para servidores de Minecraft, desenvolvida com uma estética retro terminal (Cyber/Hacker vibe). O sistema foi projetado em nuvem e permite criar uma conta, pesquisar jogadores ativos, salvar IPs favoritos em um banco de dados relacional e gerar gráficos analíticos da atividade dos servidores (apenas para estudos).


🚀 Funcionalidades

  • Radar em Tempo Real: Conexão direta com a API pública api.mcsrvstat.us para puxar dados instantâneos de qualquer servidor (Java/Bedrock).
  • Sistema de Contas (Autenticação): Criação de usuários e login com senhas criptografadas, garantindo isolamento de dados por sessão.
  • Sistema de Favoritos Individual (CRUD): * Capacidade de favoritar servidores e salvá-los de forma persistente e atrelada exclusivamente à sua conta.
    • Botões interativos para forçar a atualização (Refresh) do status do servidor.
    • Opção de remoção do servidor da lista de favoritos com atualização instantânea da interface.
  • Interface Retro: Estilização customizada em CSS injetado, utilizando a clássica fonte Merriweather (com suporte a estilos alternativos como VT323) e temas escuros (High Contrast).
  • Painel de Análise de Dados (DataViz): Gráficos de linha dinâmicos mostrando projeções de tráfego de jogadores (24 Horas / 7 Dias), formatados cronologicamente.

🧠 O Que Foi Estudado e Aplicado

Este projeto serviu como um laboratório prático para conceitos fundamentais de Engenharia de Software e Banco de Dados na Nuvem:

1. CRUD Completo na Nuvem (PostgreSQL / Supabase)

A aplicação agora possui um ciclo de vida de dados centralizado em um servidor e encapsulado por usuário:

  • Create (INSERT INTO): Salva novos IPs no banco atrelando-os ao id do usuário conectado.
  • Read (SELECT): Busca a lista de servidores salvos através de um WHERE utilizando a Foreign Key do usuário logado.
  • Update (Interação API): Atualiza os dados visuais puxando novas requisições HTTP (requests.get).
  • Delete (DELETE FROM): Remove o registro permanentemente do banco validando o dono do servidor.

2. Segurança e Arquitetura de Dados

  • Criptografia de Senhas: Utilização da biblioteca nativa hashlib (SHA-256) para garantir que nenhuma credencial seja salva em texto puro (Plain Text).
  • Isolamento de Estado Web: Gerenciamento do ciclo de vida do usuário na aplicação utilizando a "mochila" do Streamlit (st.session_state), mantendo o "crachá" virtual ativo enquanto a página não é fechada.
  • Gestão de Segredos: Implementação de arquivos .toml para blindar Connection Strings e prevenir o vazamento de credenciais do banco no repositório.

3. Estruturação de Dados com Pandas

  • Criação de DataFrames manuais para consumo analítico.
  • Manipulação do Index do Pandas para sobrepor o comportamento padrão de ordem alfabética de bibliotecas gráficas, garantindo a ordenação cronológica correta dos dados no painel.

🌐 Como Acessar a Aplicação

O projeto abandonou a necessidade de execução local ou via terminais e agora está 100% hospedado na nuvem (Deploy via Streamlit Community Cloud).

Para utilizar a ferramenta, basta acessar o link oficial pelo seu navegador (no computador ou celular):

Primeiros Passos:

  1. Acesse o site e vá na aba "Nova Conta".
  2. Crie o seu usuário e senha (os dados são isolados e seguros).
  3. Faça o login na aba "Entrar" para liberar o acesso ao Radar.
  4. Digite qualquer IP de servidor na barra de buscas, veja os gráficos analíticos e clique na estrela (⭐) para salvar no seu perfil!

Desenvolvido por Guilherme da Silva Anselmo 🦜

About

Uma ferramenta de monitoramento em tempo real para servidores de Minecraft, desenvolvida com uma estética retro terminal (Cyber/Hacker vibe). O sistema permite visualizar jogadores ativos, favoritar IPs num banco de dados local e gerar gráficos analíticos da atividade dos servidores (apenas para estudos).

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages