#################################################################################################### 01. Iniciando um projeto Nodejs: Nessa aula aprenderemos a criar um projeto utilizando o Node.js para já dar início ao nosso primeiro projeto. [Commit: Iniciando um projeto Nodejs](https://github.com/rocketseat-education/explorer-stage-08/tree/3d09e9ecf3470758c0382e2d80933d755fea24ff) #################################################################################################### 02. Adicionando o Express: Nessa aula aprenderemos como instalar o Express em nosso projeto, o Express é um framework utilizado para lidar com requisições HTTP. [Commit: Adicionando o Express](https://github.com/rocketseat-education/explorer-stage-08/tree/d12ae2ea7f503820813d5291517a6f7ad272831f) #################################################################################################### 03. node_modules: Nessa aula entenderemos para que serve a pasta `node_modules` o que tem dentro dela e como evitar para que ela seja enviada para um repositório na nuvem. [Commit: node_modules](https://github.com/rocketseat-education/explorer-stage-08/tree/979cd0741878cc11d69abadbf6641764d8d191cf) #################################################################################################### 04. Utilizando o Express: Nessa aula aprenderemos como fazer as configurações iniciais do Express em nosso projeto. [Commit: Utilizando o Express](https://github.com/rocketseat-education/explorer-stage-08/tree/fc31e6e63ddc5225349763b51ff01031991e4b76) #################################################################################################### 05. Executando a aplicação: Nessa aula executaremos o Express em nosso projeto e como automatizar a execução do Express. [Commit: Executando a aplicação](https://github.com/rocketseat-education/explorer-stage-08/tree/eb695b150aaaec37a55a73000e9360ce3a4685f7) #################################################################################################### 06. Rotas e Métodos HTTP: Nessa aula aprenderemos o que são e como funciona as Rotas e os métodos de requisição *(GET, POST, PUT, DELETE, PATCH)* #################################################################################################### 07. Método GET: Nessa aula utilizaremos em nossa API o método GET para exibir uma mensagem no navegador ao acessar a rota. [Commit: Método GET](https://github.com/rocketseat-education/explorer-stage-08/tree/73f99cfe767e1f27df8eceb2fe943bb12bb9ac87) #################################################################################################### 08. Route Params: Nessa aula aprenderemos como utilizar os Route Params utilizando recursos e parâmetros em nossa Rota [Commit: Route Params](https://github.com/rocketseat-education/explorer-stage-08/tree/f2b211c412ae4ae39f088646b7a4f0cc5b33ffab) #################################################################################################### 09. Query Params: Nessa aula aprenderemos o que é Query Params e como utilizar e qual a diferença dele para o Route Params. [Commit: Query Params](https://github.com/rocketseat-education/explorer-stage-08/tree/b31ad7fff45770d0095b6a67238a3532e17fdbb2) #################################################################################################### 10. Nodemon: Nessa aula instalaremos uma dependência de desenvolvimento chamada Nodemon. Dessa forma, não precisaremos ficar reiniciando o nosso servidor manualmente sempre que houver uma alteração. [Commit: Nodemon](https://github.com/rocketseat-education/explorer-stage-08/tree/9d646caefbed3beae28f6a4c8728bb1450bda925) #################################################################################################### 11. Insomnia: Nessa aula aprenderemos como utilizar outras rotas dentro do nosso projeto utilizando a ferramenta Insomnia. Download: [Insomnia](https://insomnia.rest/download) #################################################################################################### 12. Método POST: Nessa aula aprenderemos como utilizar o método POST dentro do Insomnia [Commit: Método POST](https://github.com/rocketseat-education/explorer-stage-08/tree/4355c4757a43a41ca34b98e6af8b9bb9877858fd) #################################################################################################### 13. Body Params: Nessa aula aprenderemos como enviar e receber dados utilizando o body da nossa requisição no formato JSON. [Commit: Body Params](https://github.com/rocketseat-education/explorer-stage-08/tree/03f9bfcf0bff663176aea9f6284893f19e0e1748) #################################################################################################### 14. Organizando a estrutura do projeto: Nessa aula aprenderemos a melhor maneira de organizar a estrutura do nosso projeto. Imagem de exemplo de como será a estrutura daqui pra frente: ![organizando-estrutura](https://storage.googleapis.com/golden-wind/explorer/description-assets/nivel-08/organizando-estrutura.png) [Commit: Organizando a estrutura do projeto](https://github.com/rocketseat-education/explorer-stage-08/tree/f950a68d6e39872438c5bc8e8f090e180059ada1) #################################################################################################### 15. Controllers: Nessa aula aprenderemos o que são os Controllers, como utilizá-los em nosso projeto e boas práticas para sua utilização. [Commit: Controllers](https://github.com/rocketseat-education/explorer-stage-08/tree/ee958940a66a56aa9d5c135bec97c9606abb5f8e) #################################################################################################### 16. Users Controller: Nessa aula começaremos a separar as responsabilidades do nosso projeto, para isso criaremos o nosso primeiro Controller *(User Controller)*. [Commit: Users Controller](https://github.com/rocketseat-education/explorer-stage-08/tree/a95e2f855872d57712e4bd9388227dece9bc1575) #################################################################################################### 17. HTTP Codes: Nessa aula aprenderemos o significado dos principais HTTP Status Code ![http-codes-1.png](https://storage.googleapis.com/golden-wind/explorer/description-assets/nivel-08/http-codes-1.png) ![http-codes-2.png](https://storage.googleapis.com/golden-wind/explorer/description-assets/nivel-08/http-codes-2.png) [Commit: HTTP Codes](https://github.com/rocketseat-education/explorer-stage-08/tree/c647f4e7fecfcc9b9fe2ec06ace90ba595e7d803) #################################################################################################### 18. Entendendo Middlewares: Nessa aula aprenderemos qual a função Middleware e o que eles podem fazer dentro de uma API. #################################################################################################### 19. Utilizando Middlewares: Nessa aula aprenderemos como utilizar o Middleware em nosso projeto. #################################################################################################### 20. App Error: Nessa aula aprenderemos a tratar exceções criando um arquivo para tratar os erros inesperados e para que não interfira no funcionamento da nossa aplicação. [Commit: App Error](https://github.com/rocketseat-education/explorer-stage-08/tree/00b706a8883ad3d3e2472ffd51fe8b5d05086a9d) #################################################################################################### 21. Tratando exceções: Nessa aula aprenderemos como tratar exceções para sempre que nossa aplicação der um erro conseguirmos identificar de onde está vindo (client ou server). [Commit: Tratando exceções](https://github.com/rocketseat-education/explorer-stage-08/tree/053bd0fab0536154f9e3e851353f43b73ba86699) #################################################################################################### 22. Configurando o Insomnia: Nessa aula aprenderemos configurar o Insomnia separando os nossos Controllers em pastas e criar as variáveis de ambiente da nossa rota. #################################################################################################### 01. Iniciando um projeto Nodejs: Nessa aula aprenderemos a criar um projeto utilizando o Node.js para já dar início ao nosso primeiro projeto. [Commit: Iniciando um projeto Nodejs](https://github.com/rocketseat-education/explorer-stage-08/tree/3d09e9ecf3470758c0382e2d80933d755fea24ff) #################################################################################################### 02. Adicionando o Express: Nessa aula aprenderemos como instalar o Express em nosso projeto, o Express é um framework utilizado para lidar com requisições HTTP. [Commit: Adicionando o Express](https://github.com/rocketseat-education/explorer-stage-08/tree/d12ae2ea7f503820813d5291517a6f7ad272831f) #################################################################################################### 03. node_modules: Nessa aula entenderemos para que serve a pasta `node_modules` o que tem dentro dela e como evitar para que ela seja enviada para um repositório na nuvem. [Commit: node_modules](https://github.com/rocketseat-education/explorer-stage-08/tree/979cd0741878cc11d69abadbf6641764d8d191cf) #################################################################################################### 04. Utilizando o Express: Nessa aula aprenderemos como fazer as configurações iniciais do Express em nosso projeto. [Commit: Utilizando o Express](https://github.com/rocketseat-education/explorer-stage-08/tree/fc31e6e63ddc5225349763b51ff01031991e4b76) #################################################################################################### 05. Executando a aplicação: Nessa aula executaremos o Express em nosso projeto e como automatizar a execução do Express. [Commit: Executando a aplicação](https://github.com/rocketseat-education/explorer-stage-08/tree/eb695b150aaaec37a55a73000e9360ce3a4685f7) #################################################################################################### 06. Rotas e Métodos HTTP: Nessa aula aprenderemos o que são e como funciona as Rotas e os métodos de requisição *(GET, POST, PUT, DELETE, PATCH)* #################################################################################################### 07. Método GET: Nessa aula utilizaremos em nossa API o método GET para exibir uma mensagem no navegador ao acessar a rota. [Commit: Método GET](https://github.com/rocketseat-education/explorer-stage-08/tree/73f99cfe767e1f27df8eceb2fe943bb12bb9ac87) #################################################################################################### 08. Route Params: Nessa aula aprenderemos como utilizar os Route Params utilizando recursos e parâmetros em nossa Rota [Commit: Route Params](https://github.com/rocketseat-education/explorer-stage-08/tree/f2b211c412ae4ae39f088646b7a4f0cc5b33ffab) #################################################################################################### 09. Query Params: Nessa aula aprenderemos o que é Query Params e como utilizar e qual a diferença dele para o Route Params. [Commit: Query Params](https://github.com/rocketseat-education/explorer-stage-08/tree/b31ad7fff45770d0095b6a67238a3532e17fdbb2) #################################################################################################### 10. Nodemon: Nessa aula instalaremos uma dependência de desenvolvimento chamada Nodemon. Dessa forma, não precisaremos ficar reiniciando o nosso servidor manualmente sempre que houver uma alteração. [Commit: Nodemon](https://github.com/rocketseat-education/explorer-stage-08/tree/9d646caefbed3beae28f6a4c8728bb1450bda925) #################################################################################################### 11. Insomnia: Nessa aula aprenderemos como utilizar outras rotas dentro do nosso projeto utilizando a ferramenta Insomnia. Download: [Insomnia](https://insomnia.rest/download) #################################################################################################### 12. Método POST: Nessa aula aprenderemos como utilizar o método POST dentro do Insomnia [Commit: Método POST](https://github.com/rocketseat-education/explorer-stage-08/tree/4355c4757a43a41ca34b98e6af8b9bb9877858fd) #################################################################################################### 13. Body Params: Nessa aula aprenderemos como enviar e receber dados utilizando o body da nossa requisição no formato JSON. [Commit: Body Params](https://github.com/rocketseat-education/explorer-stage-08/tree/03f9bfcf0bff663176aea9f6284893f19e0e1748) #################################################################################################### 14. Organizando a estrutura do projeto: Nessa aula aprenderemos a melhor maneira de organizar a estrutura do nosso projeto. Imagem de exemplo de como será a estrutura daqui pra frente: ![organizando-estrutura](https://storage.googleapis.com/golden-wind/explorer/description-assets/nivel-08/organizando-estrutura.png) [Commit: Organizando a estrutura do projeto](https://github.com/rocketseat-education/explorer-stage-08/tree/f950a68d6e39872438c5bc8e8f090e180059ada1) #################################################################################################### 15. Controllers: Nessa aula aprenderemos o que são os Controllers, como utilizá-los em nosso projeto e boas práticas para sua utilização. [Commit: Controllers](https://github.com/rocketseat-education/explorer-stage-08/tree/ee958940a66a56aa9d5c135bec97c9606abb5f8e) #################################################################################################### 16. Users Controller: Nessa aula começaremos a separar as responsabilidades do nosso projeto, para isso criaremos o nosso primeiro Controller *(User Controller)*. [Commit: Users Controller](https://github.com/rocketseat-education/explorer-stage-08/tree/a95e2f855872d57712e4bd9388227dece9bc1575) #################################################################################################### 17. HTTP Codes: Nessa aula aprenderemos o significado dos principais HTTP Status Code ![http-codes-1.png](https://storage.googleapis.com/golden-wind/explorer/description-assets/nivel-08/http-codes-1.png) ![http-codes-2.png](https://storage.googleapis.com/golden-wind/explorer/description-assets/nivel-08/http-codes-2.png) [Commit: HTTP Codes](https://github.com/rocketseat-education/explorer-stage-08/tree/c647f4e7fecfcc9b9fe2ec06ace90ba595e7d803) #################################################################################################### 18. Entendendo Middlewares: Nessa aula aprenderemos qual a função Middleware e o que eles podem fazer dentro de uma API. #################################################################################################### 19. Utilizando Middlewares: Nessa aula aprenderemos como utilizar o Middleware em nosso projeto. #################################################################################################### 20. App Error: Nessa aula aprenderemos a tratar exceções criando um arquivo para tratar os erros inesperados e para que não interfira no funcionamento da nossa aplicação. [Commit: App Error](https://github.com/rocketseat-education/explorer-stage-08/tree/00b706a8883ad3d3e2472ffd51fe8b5d05086a9d) #################################################################################################### 21. Tratando exceções: Nessa aula aprenderemos como tratar exceções para sempre que nossa aplicação der um erro conseguirmos identificar de onde está vindo (client ou server). [Commit: Tratando exceções](https://github.com/rocketseat-education/explorer-stage-08/tree/053bd0fab0536154f9e3e851353f43b73ba86699) #################################################################################################### 22. Configurando o Insomnia: Nessa aula aprenderemos configurar o Insomnia separando os nossos Controllers em pastas e criar as variáveis de ambiente da nossa rota. #################################################################################################### 01. Iniciando um projeto Nodejs: Nessa aula aprenderemos a criar um projeto utilizando o Node.js para já dar início ao nosso primeiro projeto. [Commit: Iniciando um projeto Nodejs](https://github.com/rocketseat-education/explorer-stage-08/tree/3d09e9ecf3470758c0382e2d80933d755fea24ff) #################################################################################################### 02. Adicionando o Express: Nessa aula aprenderemos como instalar o Express em nosso projeto, o Express é um framework utilizado para lidar com requisições HTTP. [Commit: Adicionando o Express](https://github.com/rocketseat-education/explorer-stage-08/tree/d12ae2ea7f503820813d5291517a6f7ad272831f) #################################################################################################### 03. node_modules: Nessa aula entenderemos para que serve a pasta `node_modules` o que tem dentro dela e como evitar para que ela seja enviada para um repositório na nuvem. [Commit: node_modules](https://github.com/rocketseat-education/explorer-stage-08/tree/979cd0741878cc11d69abadbf6641764d8d191cf) #################################################################################################### 04. Utilizando o Express: Nessa aula aprenderemos como fazer as configurações iniciais do Express em nosso projeto. [Commit: Utilizando o Express](https://github.com/rocketseat-education/explorer-stage-08/tree/fc31e6e63ddc5225349763b51ff01031991e4b76) #################################################################################################### 05. Executando a aplicação: Nessa aula executaremos o Express em nosso projeto e como automatizar a execução do Express. [Commit: Executando a aplicação](https://github.com/rocketseat-education/explorer-stage-08/tree/eb695b150aaaec37a55a73000e9360ce3a4685f7) #################################################################################################### 06. Rotas e Métodos HTTP: Nessa aula aprenderemos o que são e como funciona as Rotas e os métodos de requisição *(GET, POST, PUT, DELETE, PATCH)* #################################################################################################### 07. Método GET: Nessa aula utilizaremos em nossa API o método GET para exibir uma mensagem no navegador ao acessar a rota. [Commit: Método GET](https://github.com/rocketseat-education/explorer-stage-08/tree/73f99cfe767e1f27df8eceb2fe943bb12bb9ac87) #################################################################################################### 08. Route Params: Nessa aula aprenderemos como utilizar os Route Params utilizando recursos e parâmetros em nossa Rota [Commit: Route Params](https://github.com/rocketseat-education/explorer-stage-08/tree/f2b211c412ae4ae39f088646b7a4f0cc5b33ffab) #################################################################################################### 09. Query Params: Nessa aula aprenderemos o que é Query Params e como utilizar e qual a diferença dele para o Route Params. [Commit: Query Params](https://github.com/rocketseat-education/explorer-stage-08/tree/b31ad7fff45770d0095b6a67238a3532e17fdbb2) #################################################################################################### 10. Nodemon: Nessa aula instalaremos uma dependência de desenvolvimento chamada Nodemon. Dessa forma, não precisaremos ficar reiniciando o nosso servidor manualmente sempre que houver uma alteração. [Commit: Nodemon](https://github.com/rocketseat-education/explorer-stage-08/tree/9d646caefbed3beae28f6a4c8728bb1450bda925) #################################################################################################### 11. Insomnia: Nessa aula aprenderemos como utilizar outras rotas dentro do nosso projeto utilizando a ferramenta Insomnia. Download: [Insomnia](https://insomnia.rest/download) #################################################################################################### 12. Método POST: Nessa aula aprenderemos como utilizar o método POST dentro do Insomnia [Commit: Método POST](https://github.com/rocketseat-education/explorer-stage-08/tree/4355c4757a43a41ca34b98e6af8b9bb9877858fd) #################################################################################################### 13. Body Params: Nessa aula aprenderemos como enviar e receber dados utilizando o body da nossa requisição no formato JSON. [Commit: Body Params](https://github.com/rocketseat-education/explorer-stage-08/tree/03f9bfcf0bff663176aea9f6284893f19e0e1748) #################################################################################################### 14. Organizando a estrutura do projeto: Nessa aula aprenderemos a melhor maneira de organizar a estrutura do nosso projeto. Imagem de exemplo de como será a estrutura daqui pra frente: ![organizando-estrutura](https://storage.googleapis.com/golden-wind/explorer/description-assets/nivel-08/organizando-estrutura.png) [Commit: Organizando a estrutura do projeto](https://github.com/rocketseat-education/explorer-stage-08/tree/f950a68d6e39872438c5bc8e8f090e180059ada1) #################################################################################################### 15. Controllers: Nessa aula aprenderemos o que são os Controllers, como utilizá-los em nosso projeto e boas práticas para sua utilização. [Commit: Controllers](https://github.com/rocketseat-education/explorer-stage-08/tree/ee958940a66a56aa9d5c135bec97c9606abb5f8e) #################################################################################################### 16. Users Controller: Nessa aula começaremos a separar as responsabilidades do nosso projeto, para isso criaremos o nosso primeiro Controller *(User Controller)*. [Commit: Users Controller](https://github.com/rocketseat-education/explorer-stage-08/tree/a95e2f855872d57712e4bd9388227dece9bc1575) #################################################################################################### 17. HTTP Codes: Nessa aula aprenderemos o significado dos principais HTTP Status Code ![http-codes-1.png](https://storage.googleapis.com/golden-wind/explorer/description-assets/nivel-08/http-codes-1.png) ![http-codes-2.png](https://storage.googleapis.com/golden-wind/explorer/description-assets/nivel-08/http-codes-2.png) [Commit: HTTP Codes](https://github.com/rocketseat-education/explorer-stage-08/tree/c647f4e7fecfcc9b9fe2ec06ace90ba595e7d803) #################################################################################################### 18. Entendendo Middlewares: Nessa aula aprenderemos qual a função Middleware e o que eles podem fazer dentro de uma API. #################################################################################################### 19. Utilizando Middlewares: Nessa aula aprenderemos como utilizar o Middleware em nosso projeto. #################################################################################################### 20. App Error: Nessa aula aprenderemos a tratar exceções criando um arquivo para tratar os erros inesperados e para que não interfira no funcionamento da nossa aplicação. [Commit: App Error](https://github.com/rocketseat-education/explorer-stage-08/tree/00b706a8883ad3d3e2472ffd51fe8b5d05086a9d) #################################################################################################### 21. Tratando exceções: Nessa aula aprenderemos como tratar exceções para sempre que nossa aplicação der um erro conseguirmos identificar de onde está vindo (client ou server). [Commit: Tratando exceções](https://github.com/rocketseat-education/explorer-stage-08/tree/053bd0fab0536154f9e3e851353f43b73ba86699) #################################################################################################### 22. Configurando o Insomnia: Nessa aula aprenderemos configurar o Insomnia separando os nossos Controllers em pastas e criar as variáveis de ambiente da nossa rota.