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).
- Radar em Tempo Real: Conexão direta com a API pública
api.mcsrvstat.uspara 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 comoVT323) 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.
Este projeto serviu como um laboratório prático para conceitos fundamentais de Engenharia de Software e Banco de Dados na Nuvem:
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 aoiddo usuário conectado. - Read (
SELECT): Busca a lista de servidores salvos através de umWHEREutilizando 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.
- 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
.tomlpara blindar Connection Strings e prevenir o vazamento de credenciais do banco no repositório.
- Criação de
DataFramesmanuais para consumo analítico. - Manipulação do
Indexdo 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.
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:
- Acesse o site e vá na aba "Nova Conta".
- Crie o seu usuário e senha (os dados são isolados e seguros).
- Faça o login na aba "Entrar" para liberar o acesso ao Radar.
- 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 🦜