Skip to content

karoldm/bookstore

Repository files navigation

API de Gerenciamento de livrarias! Esta API foi desenvolvida utilizando Spring Boot e oferece funcionalidades para gerenciar os livros da loja e adicionar funcionários que podem fazer login na loja para ajudar no controle de estoque.

  • Apesar do projeto ser mobile, você consegue acessar a versão web pela url bookstore web

Funcionalidades

Autenticação e Autorização

  • Cadastro de Usuários: Os usuários podem se cadastrar fornecendo informações básicas como nome de usuário, nome, senha e informações da loja (que incluem banner, nome da loja, slogan, etc).
  • Login: Autenticação segura utilizando Spring Security e JWT (JSON Web Tokens) pelos administradores da loja ou pelo seus funcionários.

Gerenciamento de Perfil

  • Atualizar Perfil: Os usuários podem alterar o nome
  • Atualizar Senha: Os usuários pode trocar de senha

Gerenciamento de Livros

  • Administradores da loja podem cadastrar, editar ou excluir livros da livraria.

Gerenciamento de Funcionários

  • Administradores podem cadastrar novos funcionários na loja. Esses funcionários tem um login próprio e poodem visulizar os livros e controler o estoque.

Documentação com Swagger

  • Swagger UI: A API está documentada utilizando Swagger, permitindo uma fácil visualização e teste dos endpoints diretamente no navegador.

Acesso baseado em Roles

  • Todas as operações são são seguras e exigem autenticação do usuário, validação da role atribuída ao usuário, bem como se ele possui relação com a loja que está operando.

Tecnologias e Ferramentas Utilizadas

  • Flutter: Framework desenvolvido pelo Google para construção de aplicativos mobile híbridos (saiba mais em Flutter)
  • Dio: Para comunicação eficiente com a API e uso de interceptors (saiba mais em Dio)
  • BLoC: Para gerenciamento eficiente dos estados da aplicação (saiba mais em BLoC)
  • GetIt: Para injeção de dependência (saiba mais em GetIt)
  • Cached network image: Para otimização de imagens web (saiba mais em Cached network image)
  • Image picker: Para tratar imagens selecionadas pelo usuário (saiba mais em Image picker)

Doc

image image image

Como Executar o Projeto

Pré-requisitos

  • Flutter SDK 3.29.2

Instalação e Execução

  1. Clone o repositório:

    git clone git@github.com:karoldm/bookstore.git
    cd bookstore
  2. Verificar instalação do flutter:

   flutter doctor
   ```

3. **Instale as dependências**:

 ```bash
 flutter pub get
  1. Inicie o projeto:

    flutter run

Deploy

Projeto hospedado no Firebase Hosting

Contribuição

Contribuições são bem-vindas! Sinta-se à vontade para abrir issues e pull requests ❤️

About

manage your book store easily

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages