{"id":29180405,"url":"https://github.com/bssallex/to-do-list","last_synced_at":"2026-06-19T01:31:27.604Z","repository":{"id":291554006,"uuid":"977976715","full_name":"Bssallex/To-do-List","owner":"Bssallex","description":"- API para gerenciamento de tarefas, construída com arquitetura MVC. Permite criar, listar, atualizar e excluir, com autenticação Oauth2 e documentação completa","archived":false,"fork":false,"pushed_at":"2025-06-21T09:50:51.000Z","size":41,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-04-29T09:41:09.591Z","etag":null,"topics":["api-rest","backend","java","springboot","todolist"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Bssallex.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-05-05T09:23:20.000Z","updated_at":"2025-06-21T09:50:55.000Z","dependencies_parsed_at":"2025-05-05T10:41:01.831Z","dependency_job_id":"d7f15fb7-86cc-47ed-9479-a6700ad77744","html_url":"https://github.com/Bssallex/To-do-List","commit_stats":null,"previous_names":["bssallex/todolist","bssallex/to-do-list"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Bssallex/To-do-List","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Bssallex%2FTo-do-List","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Bssallex%2FTo-do-List/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Bssallex%2FTo-do-List/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Bssallex%2FTo-do-List/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Bssallex","download_url":"https://codeload.github.com/Bssallex/To-do-List/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Bssallex%2FTo-do-List/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34514282,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-18T02:00:06.871Z","response_time":128,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["api-rest","backend","java","springboot","todolist"],"created_at":"2025-07-01T19:30:28.344Z","updated_at":"2026-06-19T01:31:27.568Z","avatar_url":"https://github.com/Bssallex.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 📝 To-Do List\n\nAPI REST desenvolvida para gerenciamento de **tarefas**, com autenticação, arquitetura em camadas e banco de dados versionado com Flyway. A aplicação permite que usuários criem, atualizem, concluam, listem e removam tarefas.\n\n---\n\n## 📊 Tecnologias e Ferramentas\n\n- Java 17  \n- Spring Boot  \n- Spring Data JPA  \n- Spring Security + JWT + OAuth2 (Google)  \n- Swagger / OpenAPI  \n- Lombok  \n- DTOs e Mapper  \n- Maven  \n- Flyway  \n- Docker + PostgreSQL  \n- YAML  \n- ResponseEntity  \n\n---\n\n## 🚀 Funcionalidades\n\n- 📝 Criar novas tarefas  \n- 🔍 Listar todas as tarefas  \n- 🔍 Buscar tarefa por ID  \n- ✅ Marcar tarefa como concluída  \n- 🕒 Listar tarefas pendentes  \n- 📋 Listar tarefas concluídas  \n- ✏️ Atualizar tarefa existente  \n- 🗑️ Deletar tarefa  \n\n---\n\n## 🧠 Regras de Negócio (Entidade `Tarefa`)\n\n| Atributo     | Descrição                              |\n|--------------|------------------------------------------|\n| nome         | Nome da tarefa                          |\n| descricao    | Descrição da tarefa                     |\n| dataCriacao  | Data de criação                         |\n| status       | Status da tarefa (`PENDENTE` ou `CONCLUIDO`) |\n\n---\n\n## 📌 Endpoints\n\n| Método HTTP | Caminho                        | Descrição                          | Status                   |\n|-------------|--------------------------------|------------------------------------|--------------------------|\n| GET         | /tarefas                       | Listar todas as tarefas            | 200 OK                   |\n| GET         | /tarefas/{id}                  | Buscar tarefa por ID               | 200 OK / 404 Not Found   |\n| GET         | /tarefas/concluidas            | Listar tarefas concluídas          | 200 OK                   |\n| GET         | /tarefas/pendentes             | Listar tarefas pendentes           | 200 OK                   |\n| POST        | /tarefas                       | Criar nova tarefa                  | 201 Created              |\n| PUT         | /tarefas/{id}                  | Atualizar dados da tarefa          | 200 OK / 404 Not Found   |\n| PUT         | /tarefas/{id}/concluir         | Marcar como concluída              | 200 OK / 404 Not Found   |\n| DELETE      | /tarefas/{id}                  | Deletar uma tarefa                 | 204 No Content / 404 Not Found |\n\n---\n\n## 🔐 Segurança\n\n- Autenticação via **Spring Security** com **OAuth2 (Google)**  \n- Emissão e validação de **JWT Tokens**  \n- API protegida com controle de acesso baseado em token  \n\n---\n\n## 🛠️ Migrations\n\n- Controle de versão do banco com **Flyway**  \n- Scripts versionados aplicados automaticamente no start da aplicação  \n\n---\n\n## 🐳 Banco de Dados\n\n- **PostgreSQL** como banco principal  \n- Contêiner gerenciado com **Docker**  \n\n---\n\n## ⚙️ Configuração\n\n- Arquivos `.yml` centralizam as configurações  \n- Dados sensíveis são armazenados em variáveis de ambiente  \n- Uso de Maven e Lombok para simplificar o desenvolvimento  \n\n---\n\n## 📑 Documentação da API\n\n- Documentação automática com **Swagger / OpenAPI**  \n- Acesse via: `http://localhost:8080/swagger-ui.html`  \n\n---\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbssallex%2Fto-do-list","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbssallex%2Fto-do-list","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbssallex%2Fto-do-list/lists"}