GithubHelp home page GithubHelp logo

romenildo / livroteria Goto Github PK

View Code? Open in Web Editor NEW
0.0 1.0 0.0 854 KB

Aplicação desenvolvida em Angular de um controle de cadastro de livros de uma biblioteca

TypeScript 38.79% HTML 27.83% SCSS 33.38%
angular clean-code crud frontend typescript

livroteria's Introduction

Avaliação Final Minsait - .Net e Angular

Sobre o Desafio

Desenvolver um sistema de gerenciamento de livros que atenda as necessidades e ajude a livraria a se modernizar as novas tencologias online. O Atual problema da livraria que possui um grande estoque de livros, os quais não estão cadastrados em nenhum sistema, o que dificulda a identificação dos livros disponiveis e quais precisam de reposição. O sistema vem para permitir que a livraria gerencia melhor o seu estoque na forma de cadastrar novos livros, atualização dos livros cadastrados, exclusão de livros, e busca por diversos criérios como titulo, autor, editora, edição entre outros.

Aplicação

O Projeto foi desenvoldido com Angular CLI versão 15.1.5. Com o consumo da API em .Net.

.Angular HTML5 TS SCSS

A aplicação consiste em duas telas uma de listar os livros, e outra de cadastrar. A de cadastrar possui um formulário de preecnhimento com as informações sobre o livro, como título, subtítulo, autor e os demais, além de uma imagem que pode ser pré-visualizada. Na página de Livros possui a lista de todos os livros cadastrados até o momento, além de uma pequena lista ao lado dos últimos livros recentes adicionados para ter uma maior noção e controle dos mesmos. Além que possui dois filtros diferentes um principal o qual faz a busca por uma palavra e ela pode estar tanto no título, subtítulo, editora ou autor que irá retornar a lista com a busca, e ao lado uma busca mais precisa com controle de ano de publicação, quantidade de páginas, editora, autor, e título tudo para um melhor gerenciamento e controle dos livros cadastrados.

Como executar a aplicação

Primeiramente como a aplicação é desenvolvida em angular é necessario instalar na máquina o angular CLI que atualmente (23/03/2023) está na versão 15.1.5:

Para baixar a aplicação na sua máquina pode ser feito baixando pelo próprio github ou pelo seguinte comando:

git clone https://github.com/Romenildo/Livroteria-back.git

Em seguida dentro da pasta abra o terminar e execute o seguinte comando para que as dependências do projeto angular sejam baixadas na aplicação:

   npm install

Após baixar as dependencias do projeto angular basta executar o aplicação no ambiente de desenvolvimento que o angular CLI cria, com o comando:

 ng serve

Detalhes sobre a Aplicação

Inicialmente na tela principal da lista de livros temos a seguinte tela, o qual possui toda a navegação e visualização dos livros, podendo escolher entre duas formas de visualizar sendo de lista ou em grid. Onde ao clicar na imagem do livro é possivel visualizar mais informações detalhadas sobre a obra, além das opções de excluir e editar o livro. Além disso na tela Inicial também vem com uma lista de controle dos ultimos livros adicionados, para uma melhor organização ao ir adicionando os livros no sistema.

inicial

Ao selecionar a opção de editar mostrará um modal com os campos do livro para ser feito a possivel alteração em qualquer campo ou imagem a qual possui uma pré-visualização da mesma. A edição também possui as validações dos campos obrigatórios.

editar

A aplicação vem com o sistema de diversos filtros para ajudar no gerenciamentos dos livros no sistema sendo elas. Primeiramente pelo filtro do header onde a busca é feita a partir da palavra buscando tanto nos títulos, subtitulos e autores.

filtro1

Logo abaixo possui um segundo filtro, com as opções das letras do alfabeto é possivel selecionar a letra inicial do título do livro que está buscando que o sistema filtrará pela selecionada.

filtro2

Filtro avançado que além do filtro padrão ao topo da tela Inicial, possui um filtro mais preciso de como deseja ser feito a busca, caso por determinado autor, editora, ano de publicação, ou até mesmo limitar a quantidade de páginas que o livro possui.

filtro3

Outra opção o qual é possivel filtrar a partir do filtro clicando no autor ou editora, que o filtro irá se atualizar e retornar todos os livros daquele autor ou editora selecionada.

filtroBonus

Além da filtragem do filtro avançado também é possivel selecionar a ordem que os livros irão ficar organizados. Podendo ser ela entre, Os adicionados recentes, os mais antigos adicionados, por ordem alfabeta(A-Z) ou o inverso de (Z-A).

ordenacao

Por fim a tela de cadastrar novos livros no sitema, o qual possui as validações apropriadas e uma pré visualização da capa do livro(caso nao seja adicionado um link, ou o link quebrado a capa do livro retornara uma padrao informando que nao possui imagem)

cadastrar

Mais detalhes sobre o desafio

  • Utilizar o Angular 12 ou superior, utilizando as dependências, tecnologias e conceitos aprendidos no treinamento e adicionais que julgar melhor;

Requisitos

  • Criação da interface de usuário: Crie uma interface de usuário para o cadastro de livros, permitindo que o usuário insira informações como título, subtítulo, resumo, quantidade de páginas, data de publicação, editora, edição e autor.
  • Validação de dados: Certifique-se de que as informações inseridas pelo usuário estejam corretas e completas antes de serem armazenadas no banco de dados. Por exemplo, verifique se o título do livro não está em branco ou se o mesmo não está cadastrado. Siga o modelo de dados da tabela do banco para as validações.
  • Listagem de livros: Crie uma página que liste todos os livros cadastrados no banco de dados, permitindo que o usuário filtre usando os campos de buscas.
  • Edição de livros: Crie uma funcionalidade que permita ao usuário editar informações de um livro já cadastrado no banco de dados.
  • Exclusão de livros: Crie uma funcionalidade que permita ao usuário excluir um livro já cadastrado no banco de dados.
  • Testes: Certifique-se de testar o aplicativo para garantir que todas as funcionalidades funcionem corretamente e sem erros.

O que será avaliado

  • Estrutura do código;
  • Boas práticas;
  • Componentes visuais;
  • Criatividade;
  • Qualidade;
  • Desenvolvimento dos requisitos mínimos.

livroteria's People

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.