Chat a Bit é uma aplicação de mensagens instantâneas baseada em arquitetura cliente-servidor, desenvolvida como projeto acadêmico para a disciplina de Redes de Computadores da UFRPE.
O sistema utiliza sockets TCP para comunicação em tempo real, com autenticação segura, persistência em banco de dados e interface gráfica desktop.
-
Comunicação em tempo real
Troca de mensagens instantâneas entre usuários conectados via sockets TCP. -
Cadastro e autenticação segura
Senhas criptografadas utilizando a bibliotecabcrypt. -
Persistência de dados
Armazenamento de usuários e histórico de mensagens em banco de dados PostgreSQL. -
Indicadores de status
Visualização de usuários online/offline e indicação visual de digitação. -
Interface gráfica customizada
Desenvolvida com CustomTkinter, incluindo cursores personalizados e notificações internas. -
Distribuição portátil
Geração de executável único (.exe) com Splash Screen integrada via PyInstaller.
chat_a_bit/
├── assets/ # Recursos visuais (ícones, imagens, cursores)
├── banco_de_dados/ # Scripts de criação e conexão com PostgreSQL
├── config/ # Arquivos de configuração do sistema
├── interface/ # Janelas e componentes da interface gráfica
├── rede/ # Implementação de sockets (cliente e servidor)
├── utils/ # Funções auxiliares e tratamento de caminhos
└── main.py # Ponto de entrada da aplicação cliente
- Python 3.10 ou superior
- PostgreSQL ativo e configurado
git clone https://github.com/EllenRocha1/chat_a_bit.git
cd chat_a_bitpip install -r requirements.txtconfig/config.pypython -m banco_de_dados.criar_bancopython rede/server.pypython main.pypyinstaller --noconfirm --onefile --windowed `
--name "Chat a Bit" `
--icon "assets/icone_gato.ico" `
--splash "assets/icone_gato.png" `
--add-data "assets;assets" `
--add-data "banco_de_dados;banco_de_dados" `
--add-data "config;config" `
--add-data "interface;interface" `
--add-data "rede;rede" `
--add-data "utils;utils" `
"main.py"O executável final será gerado na pasta dist/.
Desenvolvido por Ellen Rocha



