Voltar aos projetos
Sobre o Projeto
Aplicação web que simula um terminal interativo retrô com estética de monitor CRT. Permite executar comandos que interagem com rotas de API próprias desenvolvidas em Node.js, incluindo consulta de arquivos, informações do sistema, compressão/descompressão e geração de hashes. O projeto explora módulos nativos do Node.js, padronização de respostas através de middlewares customizados e oferece feedback sonoro e visual para uma experiência imersiva e nostálgica.
Funcionalidades
Terminal Interativo com Estética Retrô
Simulação completa de um terminal retrô com execução de comandos em tempo real, incluindo visual de monitor CRT com efeitos de ondulação, cor verde característica e feedback sonoro e visual.
Comandos de Sistema e Manipulação de Arquivos
Conjunto de comandos que utilizam módulos nativos do Node.js para exibir informações do sistema operacional (CPU, memória, uptime), além de permitir consulta, leitura e criação de hash de arquivos.
Compressão e Descompressão de Arquivos
Sistema de upload e compressão/descompressão GZIP de arquivos através do terminal, permitindo que o usuário envie arquivos do seu sistema local e receba os resultados processados.
Conversão Para Arte ASCII
Integração com Figlet para transformar textos em arte ASCII no estilo de programas antigos de terminal, mantendo a atmosfera nostálgica.
Desafios
Simulação Visual de Monitor CRT
Recriar a estética de um monitor CRT dos anos 80 utilizando CSS, incluindo efeitos de ondulação da tela, sombras para simular curvatura do vidro, fonte monoespaçada característica e cor verde típica de terminais antigos.
Middleware de Formatação de Respostas
Desenvolver um sistema de middleware que intercepta e padroniza todas as respostas do servidor em um formato consistente e legível para exibição no terminal.
Gerenciamento de Upload e Download de Arquivos via Web
Implementar um sistema que permite ao usuário enviar arquivos do sistema local através do navegador para compressão/descompressão no servidor, processá-los e retornar os resultados para a interface.
Sistema de Comandos Integrado às APIs
Criar uma camada de abstração que permite executar comandos diretamente no terminal e usá-los em requisições para as rotas de API correspondentes.
Aprendizados
APIs com Módulos Nativos do Node.js
Exploração dos módulos nativos do Node.js para criar APIs sem dependências externas, incluindo manipulação de arquivos, compressão GZIP, geração de hashes SHA-256 e consulta de informações do sistema operacional.
Simulação de Interface de Terminal Retrô
Técnicas de CSS para recriar a experiência visual de terminais CRT antigos, incluindo efeitos de ondulação, brilho, curvatura e animações que simulam o comportamento de monitores dos anos 80.
Padronização e Middlewares Customizados
Desenvolvimento de middlewares para interceptar e transformar respostas do servidor, garantindo consistência visual na interface do terminal.
Manipulação de Arquivos via APIs Web
Implementação de upload e processamento de arquivos usando APIs nativas do JavaScript no navegador, incluindo conversão para base64, validação e envio seguro para o servidor para operações de compressão e descompressão.