Gerador de frases do Monty Python usando NodeJS
help
{{apiData.me.position}}˚ no Ranking
profile pic account_circle
Login Comece agora
Iniciar Desafio Iniciar Desafio Fórum
{{apiData.participant_count}} Participantes
Criado Por: Created by Bruno Ventura
NodeJS
Criar APIs
Testar APIs
Ler dados de um banco de dados SQLite

Gerador de frases do Monty Python usando NodeJS

Monty Python foi um dos grupos de comediantes mais influentes e reverenciados da história da TV. Vamos criar uma API para gerar frases aleatórias coletadas dos episódios da trupe, de acordo com nosso ator favorito.

Tópicos

Neste desafio você aprenderá:

  • NodeJS
  • Criar APIs
  • Testar APIs
  • Ler dados de um banco de dados SQLite

Requisitos

​ Para este desafio você precisará de:

  • NodeJS LTS (8.12.0+)

Detalhes

O arquivo database.sqlite é uma base de dados SQLite a qual possui uma tabela chamada scripts com a estrutura:

sqlite> .schema scripts
CREATE TABLE IF NOT EXISTS "scripts" (
"index" INTEGER,
  "episode" INTEGER,
  "episode_name" TEXT,
  "segment" TEXT,
  "type" TEXT,
  "actor" TEXT,
  "character" TEXT,
  "detail" TEXT,
  "record_date" TIMESTAMP,
  "series" TEXT,
  "transmission_date" TIMESTAMP
);
CREATE INDEX "ix_scripts_index"ON "scripts" ("index");

Na coluna detail estão as frases que devem ser apresentadas pela API. Na coluna actor consta o nome do ator.

A API deve responder pelas seguintes URLs:

/v1/quote

Método: GET

Retorna uma frase aleatória de qualquer ator.

/v1/quote/{actor}

Método: GET

Retorna uma frase aleatória do ator passado como parâmetro.

O formato esperado em ambas URLs é uma Response JSON:

{"actor":"John Cleese","quote":"Yes, cigarettes. My hovercraft is full of eels."}

Obs.: Tente usar o mínimo de bibliotecas possível

codenation code review

Para receber Code review, compartilhe o link abaixo com colegas ou em nosso fórum de discussões:

codenation code review

Para receber Code review, você precisa primeiramente finalizar o desafio.

{{apiData.participant_count}} Participantes

Para definir seu posicionamento no ranking do desafio, utilizaremos a nota mais alta que tiver conquistado nele. Caso outra pessoa participante obtenha a mesma nota que a sua, o critério de desempate será data e hora de envio da mais recente.

empty ranking Ainda não temos participantes suficientes para o ranking!
Aproveite e seja um dos primeiros a participar desse desafio.
CODE:NOME NOTA
{{candidate.position}}. {{candidate.name}} {{candidate.score.toFixed(2)}}%
Installing Node.js via package manager

[Inglês] Guide to how install Node.js

Javascript Eloquente

Esse livro é sobre JavaScript, programação e maravilhas digitais

Guia Para Absolutos Iniciantes em Node.js

Não existe uma escassez de tutoriais para Node.js, mas a maioria deles cobrem casos de uso específicos ou tópicos que são aplicáveis só se você já tiver um conhecimento prático do Node. Eu vejo vários comentários que se parecem com coisas do tipo: "Eu fiz o download do node, agora o que fazer?" Este tutorial responde esta questão e explica como iniciar bem do princípio.

Testando JavaScript com o Mocha

Aprenda neste artigo como testar JavaScript com o Mocha

Using SQLite /w Node.js for Rapid Prototyping

When choosing a tech stack for your next web app, take into consideration how fast this stack will allow you to move — write code, refactor, onboard new developers to the team.

Using BDD to test REST APIs

Chakram is an API testing framework designed to perform end to end tests on JSON REST endpoints.