https://github.com/augustomello09/lista-de-tarefas
Teste técnico - Full Stack : Um sistema de lista de tarefas
https://github.com/augustomello09/lista-de-tarefas
angular docker java mysql spring-boot
Last synced: 3 months ago
JSON representation
Teste técnico - Full Stack : Um sistema de lista de tarefas
- Host: GitHub
- URL: https://github.com/augustomello09/lista-de-tarefas
- Owner: AugustoMello09
- License: mit
- Created: 2024-11-14T13:47:59.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-11-29T19:40:24.000Z (over 1 year ago)
- Last Synced: 2025-03-16T15:53:02.838Z (over 1 year ago)
- Topics: angular, docker, java, mysql, spring-boot
- Language: Java
- Homepage:
- Size: 513 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
Lista de Tarefas
Projeto Lista de Tarefas 📝
Sobre |
Backend |
Execução do projeto Backend |
Execução do projeto Frontend |
Execução o Docker-compose |
Tecnologias |
Entre em contato |
Sobre
Este projeto é uma aplicação Full Stack para uma Lista de Tarefas, desenvolvida utilizando Java com Spring Boot 3+ no backend e Angular no frontend. O objetivo é oferecer uma interface prática e moderna, permitindo aos usuários criar, editar, excluir e reorganizar tarefas de forma dinâmica, usando funcionalidades de "drag and drop".
https://github.com/user-attachments/assets/065c139e-fec5-42ee-9fa3-9819f26f9920
Backend 🔧
Projeto lista de tarefas 🧱

#### Diagrama de Classe

### Funcionalidades Principais
__Criando Tarefas__: Os usuários podem criar novas tarefas com facilidade.
> __Observação: Não é possível criar uma tarefa com um nome já existente.__
__Organizando suas tarefas__: Após criar as tarefas, os usuários podem organizá-las de duas maneiras:
- Arrastando e soltando a tarefa na posição desejada (funcionalidade de "drag and drop").
- Utilizando setas para mover as tarefas para cima ou para baixo na lista.
__Editando tarefas__: As tarefas criadas podem ser editadas pelos usuários para atualizar informações.
> __Observação: Não é possível editar uma tarefa para utilizar um nome já existente.__
__Excluindo tarefas__: Os usuários têm a opção de excluir tarefas criadas, mantendo a lista organizada e relevante.
Documentação com Swagger 📗
> A documentação do nosso sistema usando Swagger, proporcionando uma visão unificada e acessível de todos os nossos serviços

https://github.com/user-attachments/assets/711810fe-4332-4e3a-9fbd-d1ae67ab91a1
__Acesse a documentação do projeto:__
- __Acesse:__ https://deploylista.onrender.com/swagger-ui/index.html#/
> Quando subir a aplicação acesse usando esse link
- __Acesse:__ http://localhost:8080/swagger-ui.html para visualizar os endpoints.
Migration com Flyway ️️✈️
> Utilizei o Flyway para gerenciar e versionar as migrações do banco de dados de forma automática e eficiente. Isso garante que o esquema do banco esteja sempre atualizado, permitindo controle de versão e facilidade na aplicação de novas alterações.

Execução do projeto Backend 🤓
## Execute o projeto 👁🗨
__Pré-requisitos:__ Java 17 & (Docker opcional)
__Clone o repositório do projeto__
~~~~~~Bash
git clone https://github.com/AugustoMello09/Lista-de-Tarefas.git
~~~~~~
### Configurando o projeto local 🏠
__Configurando o ambiente:__
- Navegue até o diretório do projeto
~~~~~~Bash
cd ListTasksBackend
~~~~~~
- Acesse o diretório do projeto, utilize o comando `cd` e o nome do diretório para instalar todas as dependências necessárias:
~~~~~~Bash
# exemplo
cd ListTasksBackend
mvn clean package -DskipTest=true
~~~~~~
- Agora execute o seguinte comando para executar o projeto
~~~~Bash
cd ListTasksBackend
mvn spring-boot:run
~~~~
### Configurando o projeto para usar Docker 🐳
__com o terminal aberto use o seguinte comando:__
~~~~~~Bash
docker run -d -p 8080:8080 --name backend augustomello09/list-task-backend:latest
~~~~~~
Execução do projeto Frontend 🤪
## Execute o projeto 👁
__Pré-requisitos:__ Angular & Node (20) (Docker opcional)
__Executar__
- Certifique-se de ter o Node.js e o Angular CLI instalados em seu ambiente.
- Navegue até a pasta do projeto front-end:
~~~~~~Bash
cd ListTasksFrontend
~~~~~~
__Instale as dependências do projeto:__
~~~~~~Bash
npm install
~~~~~~
- Suba o Frontend
~~~~~~Bash
ng serve
~~~~~~
### Configurando o projeto para usar Docker 🐳
__com o terminal aberto use o seguinte comando:__
__AVISO ⚠️__:
> Antes de iniciar o frontend, certifique-se de que o backend está em execução para que as requisições funcionem corretamente.
~~~~~~Bash
docker run -d -p 4200:4200 --name backend augustomello09/augustomello09/list-task-frontend:latest
~~~~~~
Execução do com docker-compose 🐳
### Execute o projeto 👁
__Clone o repositório do projeto__
~~~~~~Bash
git clone https://github.com/AugustoMello09/Lista-de-Tarefas.git
~~~~~~
- Com o docker aberto, suba o docker-compose
~~~~~~Bash
docker-compose up -d
~~~~~~
Tecnologias

Entre em contato
### contato
Para mais informações sobre o projeto ou para entrar em contato, você pode me encontrar através dos canais abaixo: