Sistema desktop para gerenciamento de bibliotecas desenvolvido em Python, utilizando Tkinter para interface gráfica e MySQL para persistência de dados.
O sistema possui autenticação de usuários, criptografia de senhas, controle de permissões, gerenciamento de livros, operações de empréstimo e devolução e histórico de empréstimos.
- Cadastro e login de usuários
- Sistema de permissões (administrador/usuário)
- Busca de livros
- Empréstimos e devoluções
- Cadastro de novos livros por administradores
- Controle de disponibilidade
- Histórico de empréstimos
- Registro da data de empréstimo e devolução
- Prazo automático de 14 dias para devolução
- Confirmação ao sair do sistema
- Opção "Remember Me"
- Python 3
- Tkinter
- MySQL
- Bcrypt
- Python-dotenv
- Controle de acesso por permissões
📁 library-program
├── src
│ ├── main.py → Arquivo principal
│ ├── login.py → Login, cadastro e Remember Me
│ ├── interface.py → Interface gráfica e operações da biblioteca
│ └── database.py → Sistema do banco de dados com MySQL
│
├── images → Imagens do projeto
├── .env.example → Modelo de configuração
├── requirements.txt → Dependências
└── README.md
Clone o projeto:
git clone https://github.com/PedrReis-create/library-program
Entre na pasta:
cd library-program
Instale as dependências:
pip install -r requirements.txt
Configure as variáveis de ambiente.
Crie um arquivo .env baseado no .env.example:
MYSQL_HOST=localhost
MYSQL_USER=root
MYSQL_PASSWORD=sua_senha
MYSQL_DATABASE=biblioteca
MYSQL_PORT=3307
Execute o arquivo principal:
python src/main.py
- Senhas protegidas utilizando bcrypt
- Variáveis sensíveis armazenadas em
.env - Arquivo
.env.examplepara configuração segura do ambiente - Controle de permissões entre usuário e administrador
- Remember Me armazena apenas o nome do usuário, não a senha
- Programação modular
- Interfaces gráficas com Tkinter
- Integração Python + MySQL
- Sistema de autenticação com criptografia de senha
- Gerenciamento de empréstimos e histórico
- Uso de
datetimeetimedelta - Uso de variáveis de ambiente
- Persistência de dados em arquivos
- Organização de dependências do projeto
![]() PedrReis-create |
![]() PedroSilva370 |
⭐ Projeto desenvolvido para evolução e prática em Python.



