Repositório para a aplicação do Spira, um novo método de triagem baseado em áudio e inteligência artificial.
O servidor utiliza Node.js, um runtime de JavaScript. Já o banco de dados, utiliza MongoDB.
Como também, o projeto utiliza Docker e Docker Compose. Caso nunca tenha utilizado Docker, acesse: get-docker.
Recomendamos que utilize Docker para desenvolver o projeto.
Para executar o servidor:
- Clone o repositório.
$ git clone https://github.com/spirabr/backend
- Execute:
$ docker-compose build
- Execute:
$ docker-compose up
Com isso, estão inicializados tanto o banco de dados quanto o servidor (em localhost na porta 3000).
Para subir o servidor sem utilizar Docker:
- Clone o repositório.
$ git clone https://github.com/spirabr/backend
-
É necessário setar as variáveis de ambiente do MongoDB e do Node.Js
- MONGO_INITDB_DATABASE (MongoDB)
- MONGODB_URL (Node.js)
- MONGO_DATABASE_NAME (Node.js)
-
Inicie uma instância do MongoDB na porta 27017.
-
Suba o servidor com o comando:
$ npm run dev
O servidor está escutando conexões pela porta 3000 e o MongoDB está escutando conexões pela porta 27017.
Método | Rota | Descrição |
---|---|---|
GET | / |
Retorna todas as coletas de todos os pacientes. |
POST | / |
Cria uma nova coleta. |
GET | /:patientId |
Retorna uma coleta do paciente com ID igual a patientId . |
PATCH | /:patientId |
Atualiza dados sobre uma coleta do paciente com ID igual a patientId . |
DELETE | /:patientId |
Deleta uma coleta do paciente com ID igual a patientId . |
- Atualizando informações de uma coleta do paciente com ID 9124192448
$ curl -X PATCH -H "Content-Type: application/json" -d '{"collector":{ "hospital":"Hospital das Clínicas"}}' http://localhost:3000/9124192448
- Criar uma nova coleta para o paciente com ID 12334
$ curl -X POST -H "Content-Type: application/json" -d '{"patientId":"12334","collector":{"name":"SPIRA test","hospital":"Test"}}' http://localhost:3000/
{
"patientId": "123456789",
"collector": {
"name": "Vinicius Pereira",
"hospital": "Albert Einstein"
},
"audioUrl1": "http://banco-de-audios.com/audios/1",
"audioUrl2": "http://banco-de-audios.com/audios/2",
"audioUrl3": "http://banco-de-audios.com/audios/3",
"audioUrl4": "http://banco-de-audios.com/audios/4"
}
Tenha certeza que o MongoDB está rodando em sua máquina, e execute o comando:
$ npm run test