Este projeto foi desenvolvido como objeto de estudos do desenvolvimento de API's utilizando NodeJs e foi baseado na série de screencasts do Fabio Vedovelli
A versão NVI utilizada foi baseada neste Repositório da Bíblia
API responsável por obter as passagens da Bíblia
O frontend deste projeto bible-vue foi desenvolvido com VueJs.
GET
/books Obtém a lista de livros disponíveisGET
/books/{:bookId}/chapters Obtém a lista de capítulos disponíveis de um livroGET
/books/{:bookId}/chapters/{:chapterId}/verses Obtém a lista de versículos de um livro e capítuloGET
/books/{:bookId}/chapters/{:chapterId}/verses/{:verseId} Obtém um versículoGET
/passages/:id Obtém uma passagem pelo IDGET
/passages/:id/next Obtém a pŕoxima passagem pelo IDGET
/passages/:id/previous Obtém a passagem anterior pelo ID
- Node.js versão 8 ou superior;
- Nodemon -
npm i -g nodemon
- pm2 -
npm i -g pm2
para produção
- Faça o clone do repositório e no terminal navegue até a pasta;
- Instale as dependências do projeto com
npm install
; - Faça uma cópia do .env.example com o nome .env e adicione as informações de conexão com seu banco de dados MySQL (produção e teste).
- Na pasta sql se encontra o arquivo: nvi.sql. Utilize-os para criar o banco de dados, tabelas e inserção de dados;
- Rode o servidor de desenvolvimento com
npm run dev
ou modo produção comnpm run production
; - Rode os testes com
npm test
. Para observar os arquivos durante o desenvolvimento utilizenpm test -- --watch
; - O endpoint do serviço estará disponível em http://localhost:3003 .
- Criar a imagem
docker build -t bible-edge:latest
- Criar Container
docker run -p 8080:8080 -d -t bible-edge:latest
- Iniciar bash a partir do Container
docker exec -it /bin/bash
Utilize o Postman para testar suas chamadas. https://www.getpostman.com/.
- MySQL: Banco de dados relacional;
- NodeJs Framework desenvolvimento Javascript.