Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/levysantiago/daily-diet-api

Manage your diet with the Daily Diet API.
https://github.com/levysantiago/daily-diet-api

fastify knex restful-api sqlite typescript

Last synced: 5 days ago
JSON representation

Manage your diet with the Daily Diet API.

Awesome Lists containing this project

README

        

# Daily Diet
[![Node.js CI](https://github.com/levysantiago/daily-diet-api/actions/workflows/node.js.yml/badge.svg)](https://github.com/levysantiago/daily-diet-api/actions/workflows/node.js.yml)

Esta aplicação é um dos desafios da trilha Ignite da plataforma da Rocketseat. Aqui utilizo o Knex como ORM, SQLite como banco de dados e o Fastify como framework backend.

Este é o [link do Figma](https://www.figma.com/community/file/1218573349379609244/Daily-Diet-%E2%80%A2-Desafio-React-Native) do desing de como seria a aplicação frontend.

## Getting started

### Instalando Dependências

```bash
npm i
```

ou

```bash
yarn
```

### Rodando migrations

```bash
npx knex migrate:latest
```

### Iniciando aplicação

```bash
npm run dev
```

ou

```bash
yarn dev
```

### Rodando testes

```bash
yarn test
```

ou

```bash
npm run test
```

### Regras da aplicação

- [x] Deve ser possível criar um usuário

- [x] Deve ser possível identificar o usuário entre as requisições

- [x] Deve ser possível registrar uma refeição feita, com as seguintes informações:

*As refeições devem ser relacionadas a um usuário.*

- Nome
- Descrição
- Data e Hora
- Está dentro ou não da dieta

- [x] Deve ser possível editar uma refeição, podendo alterar todos os dados acima

- [x] Deve ser possível apagar uma refeição

- [x] Deve ser possível listar todas as refeições de um usuário

- [x] Deve ser possível visualizar uma única refeição

- [x] Deve ser possível recuperar as métricas de um usuário

- [x] Quantidade total de refeições registradas

- [x] Quantidade total de refeições dentro da dieta

- [x] Quantidade total de refeições fora da dieta

- [x] Melhor sequência de refeições dentro da dieta

- [x] O usuário só pode visualizar, editar e apagar as refeições o qual ele criou