Skip to content

mgpcampos/abd-biblioteca

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Biblioteca Comunitária

Felipe Oliveira, Mateus Gomes, Miguel Luís, Ray Guilherme


Professores responsáveis

  • Carlos Eduardo Duque Polito
  • Olavo Olimpo de Matos Junior

Introdução ao projeto

Objetivo

A aplicação é destinada ao gerenciamento de livros em bibliotecas. O principal objetivo é facilitar a interação entre usuários e bibliotecas e o gerenciamento de livros de maneira simples.

O que não é o objetivo do projeto

A integração com redes sociais para login ou o compartilhamento; A disponibilidade de recursos de avaliações ou comentários sobre os livros; Não haverá métodos de pagamento pois não é o objetivo do projeto arrecadar dinheiro; A escalabilidade. É um projeto pequeno e não queremos complica-lo. Não haverá reservas. Nosso site será usado mais para a averiguar os livros disponíveis na biblioteca local e sua popularidade. Se não haver mais o livro nós o removeremos.

Público-alvo

Todos que se interassam por livros. Seja para aquele que trabalha com isso ou para aquele que consome isso.

Requisitos do sistema

Requisitos funcionais:

A aplicação será dividida em dois tipos de usuários: o administrador e o usuário comum. O administrador será capaz de cadastrar livros, gerenciar estoques e visualizar reservas. O usuário comum, por sua vez, terá a capacidade de buscar por livros, consultar os detalhes de um livro, reservar os livros que desejarem e verificar o seu histórico de reservas.

Requisitos não funcionais:

O grupo não é capaz de garantir que, em um primeiro momento, a aplicação irá apresentar um bom desempenho geral, uma segurança relevante e uma fácil escalabilidade.

Funcionalidades do projeto

A aplicação de gerenciamento de livros em bibliotecas será uma ferramenta intuitiva e prática, dividida entre dois tipos de usuários: administradores e usuários comuns.

Funcionalidades para o Administrador:

  • Cadastro de livros: Possibilidade de inserir novos títulos, incluindo informações como nome, autor, gênero, quantidade disponível, entre outros.

Funcionalidades para o Usuário Comum:

  • Consulta por detalhes: Visualização de informações detalhadas sobre os livros disponíveis.

Instruções para operar a aplicação

1. Clonar o Repositório

git clone https://github.com/mgpcampos/abd-biblioteca

2. Navegar até o Diretório do Projeto

cd abd-biblioteca

3. Criar e Ativar um Ambiente Virtual

python -m venv .venv

• Windows

.venv\Scripts\activate

• Linux/macOS

source venv/bin/activate

4. Instalar as Dependências

pip install -r requirements.txt

5. Configurar Variáveis de Ambiente

Crie um arquivo .env na raiz do projeto e adicione as seguintes linhas:

FLASK_SECRET_KEY=SuaChaveSecreta
SUPABASE_URL=SuaURLdoSupabase
SUPABASE_KEY=SuaChaveDoSupabase

6. Executar a Aplicação

flask run

Para executar em modo de desenvolvimento com recarregamento automático, execute:

flask run --debug

Caso obtenha sucesso, acesse 127.0.0.1:5000/

Administradores:

  1. Acesse o sistema e crie uma conta como administrador.
  2. Faça login com seu e-mail e senha cadastrados.
  3. Acesse o painel administrativo para:
    • Cadastrar novos livros.
    • Atualizar os livros conforme for necessário.

Usuário Comum:

  1. Acesse o sistema e crie uma conta como Usuário Comum (se ainda não tiver).
  2. Faça login com seu e-mail e senha cadastrados.
  3. Consulte os detalhes de um livro de seu interesse para verificar informações sobre ele.

Matriz de Requisitos

Modelagem do Banco de Dados

Dicionário de Dados

Esse projeto contará com as seguintes Entidades e atributos

Entidade usuários

Essa entidade é necessária para cadastrar tanto o usuário comum quanto o administrador, possuindo os campos: id, nome, email, senha e ISadmin.

  • idUsuário: É um atributo do tipo INT. É o responsável por criar um Id único para o usuário, que no caso é o usuário comum ou o administrador (CHAVE PRIMÁRIA).
  • ISadmin: É um atributo do tipo BOOL. ISAdmin só armazena valores TRUE ou FALSE. Se no caso de um usuário A, o valor for TRUE, então esse usuário é um administrador. Se for false, é um usuário comum.
  • nome: É um atributo do tipo VARCHAR com um tamanho de 45 caracteres. É o responsável por armazenar o nome do usuário.
  • senha: É um atributo do tipo VARCHAR com um tamanho de 45 caracteres. É o responsável por armazenar a senha que o usuário cadastrou.

Entidade books

Essa entidade é necessária para cadastrar todas as informações do livro registrado, possuindo os campos: id, título, autor, sinopse, capa, popularidade.

idBook: É um atributo do tipo INT. É o responsável por criar um Id único para o livro registrado (CHAVE PRIMÁRIA).

  • título : É um atributo do tipo VARCHAR com um tamanho de 45 caracteres. É o responsável por armazenar o título do livro.
  • autor: É um atributo do tipo VARCHAR com um tamanho de 45 caracteres. É o responsável por armazenar o nome do autor.
  • imagem_url: É um atributo do tipo VARCHAR com um tamanho de 45 caracteres. É o responsável por armazenar a capa do livro.
  • sinopse: É um atributo do tipo VARCHAR com um tamanho de 45 caracteres. É o responsável por armazenar a sinopse do livro.
  • popularidade É um atributo do tipo INT. Serve pra contagem de quantos clicks um livro recebeu. Por que o index mostra os livros de modo decrescente de acordo com a contagem de clicks.

Tecnologias utilizadas

Front-end:

Back-end:

Banco de Dados:

Arquitetura da Aplicação

Arquitetura do Software

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •