https://github.com/Gabriel4420/teste-backend-gabriel
Bem-vindo à API de Resultados Escolares, uma aplicação em Node.js que permite gravar, excluir e listar resultados escolares por bimestre, disciplina, nota, data de criação e data de atualização. Esta API foi desenvolvida utilizando Typescript, Prisma, Fastify.
https://github.com/Gabriel4420/teste-backend-gabriel
fastify nodejs solid-principles typescript
Last synced: over 1 year ago
JSON representation
Bem-vindo à API de Resultados Escolares, uma aplicação em Node.js que permite gravar, excluir e listar resultados escolares por bimestre, disciplina, nota, data de criação e data de atualização. Esta API foi desenvolvida utilizando Typescript, Prisma, Fastify.
- Host: GitHub
- URL: https://github.com/Gabriel4420/teste-backend-gabriel
- Owner: Gabriel4420
- Created: 2024-01-04T17:44:28.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2024-10-12T00:01:11.000Z (over 1 year ago)
- Last Synced: 2025-02-16T09:42:47.210Z (over 1 year ago)
- Topics: fastify, nodejs, solid-principles, typescript
- Language: TypeScript
- Homepage:
- Size: 66.4 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 2
-
Metadata Files:
- Readme: readme.md
Awesome Lists containing this project
README
📙 Desafio Teste Backend 📙
Bem-vindo à API de Resultados Escolares, uma aplicação em Node.js que permite gravar, excluir e listar resultados escolares por bimestre, disciplina, nota, data de criação e data de atualização. Esta API foi desenvolvida utilizando TypeScript, Prisma, Fastify e seguindo os princípios do padrão SOLID e Clean Code.
## 📝 Pré-requisitos
Certifique-se de ter as seguintes ferramentas instaladas em sua máquina:
✅ Node.js (v14 ou superior)
✅ npm (v6 ou superior)
✅ TypeScript
✅ Prisma
✅ Fastify
## ⚙️ Instalação
Clone este repositório:
```bash
git clone https://github.com/Gabriel4420/teste-backend-gabriel.git
```
Instale as dependências:
```bash
npm install
```
Execute as migrações do banco de dados com Prisma:
```bash
npx prisma migrate dev
```
Inicie o servidor:
```bash
npm run start
```
A API estará acessível em .
## 📍 Endpoints
1.Gravar Resultado Escolar
URL: /resultados
Método: POST
Exemplo de corpo da requisição:
```bash
{
"bimestre": "PRIMEIRO",
"disciplina": "Sociologia",
"nota": 9.5
}
```
2.Excluir Resultado Escolar
URL: /deletarResultado/:id
Método: DELETE
3. Listar Resultados Escolares
URL: /listarResultados
Método: GET
Parâmetros de Consulta Opcionais:
id
## 🔩 Estrutura do Projeto
A estrutura do projeto segue o padrão de arquitetura limpa (Clean Architecture) para garantir a separação de responsabilidades e a manutenibilidade do código. Os principais diretórios são:
src/controllers: Controladores que lidam com as requisições HTTP.
src/services: Lógica de negócios e interação com o banco de dados.
src/routes: Definição das rotas da aplicação.
Espero que esta API seja útil para o gerenciamento de resultados escolares. Se precisar de ajuda ou tiver sugestões, não hesite em entrar em contato. ¡Boa codificação! 🚀
Feito com ❤️ por Gabriel Rodrigues 👋️ Entre em contato!