Skip to content

📌 API para o OrgaTask onde é possivel gerenciar as tarefas com: ✔ Cadastro de usuários e login seguro ✔ Criação de tarefas com prioridade e status ✔ Acesso via web (Blazor) ou desktop (Windows Forms) - (Tecnologias: .NET 8, API REST, SQLite, Entity Framework)

Notifications You must be signed in to change notification settings

Jabonelas/OrgaTask-API

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

88 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

OrgaTask API

Visão Geral

OrgaTask API é uma API RESTful desenvolvida para gerenciar tarefas e autenticação de usuários, servindo como backend para múltiplos clientes (Web, Desktop e Mobile). O projeto foi construído com foco em boas práticas de arquitetura, segurança, e documentação, utilizando tecnologias modernas do ecossistema .NET.

Tecnologias Utilizadas

  • Core: .NET 8
  • Banco de Dados: SQLite
  • ORM: Entity Framework Core
  • Autenticação: JWT Bearer Tokens
  • Documentação: Swagger/OpenAPI

Padrões Arquiteturais

  • Service Layer: Separação entre controllers e lógica de negócio
  • Repository Pattern: Abstração do acesso a dados
  • Unit of Work: Gerenciamento transacional
  • DTOs: Transferência de dados
  • Injeção de Dependência: Nativa do .NET (IServiceCollection)

Funcionalidades

  • Autenticação e autorização via JWT
  • CRUD de tarefas (criar, listar, atualizar, excluir)
  • Documentação interativa via Swagger
  • Validação de dados e tratamento de erros

Pré-requisitos

  • .NET 8 SDK
  • SQLite (ou use o banco embutido no projeto)
  • Postman ou cURL (para testar a API)

Como Executar o Projeto

  1. Clone o repositório:
git clone https://github.com/Jabonelas/OrgaTask-API.git
cd OrgaTask-API
  1. Restaure as dependências:
dotnet restore
  1. Configure o banco de dados:

O arquivo do banco de dados (Banco.db) já está incluído no projeto.

Caso necessário, aplique as migrações:

dotnet ef database update
  1. Execute a API:
dotnet run
  1. Acesse a documentação Swagger em: https://localhost:7091/swagger

Exemplo de Uso

Autenticação

Envie uma requisição POST para /api/usuarios/login:

curl -X 'POST' \
  'https://localhost:7091/api/usuarios/login' \
  -H 'accept: text/plain' \
  -H 'Content-Type: application/json' \
  -d '{
  "login": "string",
  "senha": "string"
}'

Resposta:

{
  "token": "eyJhbGciOiJIUzI1NiIs..."
}

Listar Tarefas

Use o token JWT no header Authorization:

curl -X 'GET' \
  'https://localhost:7091/api/tarefas' \
  -H 'accept: text/plain' \
  -H 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR...'

Resposta:

[
  {
    "id": 255,
    "titulo": "Otimizar consultas SQL",
    "descricao": "Analisar e melhorar performance das queries do sistema",
    "prioridade": "Média",
    "prazo": 8,
    "status": "Pendente",
    "data": null
  }
]
image

image

image

Contribuições

Sinta-se à vontade para abrir issues ou enviar pull requests. Todas as contribuições são bem-vindas!

About

📌 API para o OrgaTask onde é possivel gerenciar as tarefas com: ✔ Cadastro de usuários e login seguro ✔ Criação de tarefas com prioridade e status ✔ Acesso via web (Blazor) ou desktop (Windows Forms) - (Tecnologias: .NET 8, API REST, SQLite, Entity Framework)

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published