Skip to content

Latest commit

 

History

10 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 

Repository files navigation

📚 Biblioteca de Livros PDF

Sistema de gerenciamento de biblioteca pessoal para livros em PDF com banco de dados SQLite.

🚀 Funcionalidades

  • ✅ Upload de arquivos PDF
  • ✅ Extração automática de metadados (título, autor, páginas)
  • ✅ Armazenamento em banco de dados SQLite
  • ✅ Busca por título ou autor
  • ✅ Filtro por categoria
  • ✅ Edição de informações dos livros
  • ✅ Exclusão de livros
  • ✅ Estatísticas da biblioteca
  • ✅ Gráficos de visualização
  • ✅ Detecção de duplicatas por hash MD5

📋 Pré-requisitos

  • Python 3.8 ou superior
  • pip (gerenciador de pacotes Python)

🔧 Instalação Local

  1. Clone ou baixe este projeto

  2. Instale as dependências:

pip install -r requirements.txt
  1. Execute o aplicativo:
streamlit run app.py
  1. Acesse no navegador: http://localhost:8501

☁️ Deploy no Streamlit Cloud

  1. Faça login em share.streamlit.io

  2. Conecte sua conta do GitHub

  3. Crie um novo repositório no GitHub com os arquivos:

    • app.py
    • requirements.txt
    • README.md
  4. No Streamlit Cloud, clique em "New app"

  5. Selecione seu repositório e branch

  6. Defina o arquivo principal: app.py

  7. Clique em "Deploy"

📖 Como Usar

Adicionar Livros

  1. Selecione "📥 Adicionar Livro" no menu lateral
  2. Faça upload do arquivo PDF
  3. Preencha as informações (título é obrigatório)
  4. Clique em "💾 Salvar na Biblioteca"

Gerenciar Biblioteca

  1. Selecione "📖 Biblioteca" no menu lateral
  2. Use a busca para encontrar livros
  3. Filtre por categoria
  4. Edite ou delete livros conforme necessário

Ver Estatísticas

  1. Selecione "📊 Estatísticas" no menu lateral
  2. Visualize métricas e gráficos da sua biblioteca

💾 Banco de Dados

O sistema cria automaticamente um arquivo biblioteca.db que armazena:

  • Título, autor, ano, categoria
  • Idioma, número de páginas
  • Hash do arquivo (para evitar duplicatas)
  • Nome do arquivo original
  • Data de adição
  • Notas personalizadas

🔒 Segurança

  • Detecção de arquivos duplicados via hash MD5
  • Validação de tipo de arquivo (apenas PDF)
  • Armazenamento local dos metadados

☁️ Deploy no Google Cloud Run (via Buildpacks)

Este repositório está configurado para implantação contínua no Cloud Run usando Buildpacks do Google Cloud via Cloud Build.

Pré-requisitos

  • Conta no Google Cloud
  • Repositório conectado ao Cloud Build

Configuração

  1. No console do Google Cloud, acesse Cloud Run
  2. Clique em Criar serviçoImplantação contínua com o Cloud Build
  3. Conecte seu repositório GitHub
  4. Configure:
    • Branch: ^main$
    • Tipo de build: Buildpacks do Google Cloud
    • Diretório de contexto: /
    • Ponto de entrada: (deixe em branco)
    • Destino da função: (deixe em branco)
  5. Clique em Criar

O Buildpack detecta automaticamente o Python via requirements.txt e usa o Procfile para iniciar o Streamlit na porta definida pela variável $PORT.

📝 Notas

  • Os arquivos PDF não são armazenados no banco de dados, apenas os metadados
  • O banco de dados SQLite é criado na mesma pasta do aplicativo
  • Para backup, copie o arquivo biblioteca.db

🤝 Contribuições

Sugestões e melhorias são bem-vindas!

📄 Licença

Este projeto é de código aberto e está disponível sob a licença MIT.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages