Imagem do Curso gratuito Node.js, Express, MySQL e Handlebars (CRUD   deploy na KingHost)

Curso online gratuitoNode.js, Express, MySQL e Handlebars (CRUD deploy na KingHost)

Duração do curso online: 6 horas e 24 minutos

Novo

Crie um CRUD completo com Node.js, Express, MySQL e Handlebars e aprenda a fazer deploy na KingHost. Curso online gratuito, prático e direto ao ponto.

Neste curso gratuito, aprenda sobre

  • Criar e configurar projetos Node.js com npm (package.json, scripts e dependências)
  • Construir servidor e rotas HTTP com Express (GET/POST e parâmetros de URL)
  • Usar nodemon para reinício automático e produtividade no desenvolvimento
  • Modelar BD MySQL: criar base/tabelas, PK, AUTO_INCREMENT e alterações de schema
  • Conectar Node.js ao MySQL via módulo mysql e executar queries com tratamento de erros
  • Implementar CRUD completo de produtos (INSERT, SELECT, UPDATE com WHERE e DELETE)
  • Integrar express-handlebars: views, layouts, partials e renderização com dados
  • Servir arquivos estáticos (CSS/Bootstrap/imagens) com express.static
  • Aplicar Bootstrap/CSS para layout responsivo e listagens (grid, centralização, alinhamento)
  • Receber dados de formulários via body-parser/express.urlencoded e validações
  • Implementar upload e troca de imagens em formulários (multipart/form-data e req.files)
  • Excluir arquivos no servidor com fs ao remover/atualizar produtos
  • Criar pesquisa e ordenação no MySQL (LIKE e ORDER BY RAND/ASC/DESC)
  • Publicar app: domínio, DNS, hospedagem KingHost, SSL, NPM e deploy com MySQL

Descrição do curso

Aprenda a tirar uma aplicação back-end do papel e levá-la até a internet com um projeto completo, prático e totalmente funcional. Neste curso online gratuito, você vai desenvolver um gerenciador de produtos usando Node.js, Express, MySQL e Handlebars, entendendo como as peças se conectam para formar um CRUD real: cadastrar, listar, editar e remover registros com segurança e organização.

Ao longo da jornada, você vai construir a base de um projeto profissional, desde a configuração inicial com NPM e a criação do servidor HTTP até a estruturação de rotas, tratamento de formulários e integração com banco de dados. O objetivo é que você entenda o fluxo de uma aplicação web na prática: requisições chegando no Express, validações antes de gravar dados, consultas SQL para persistir informações e renderização de páginas com templates, tornando a experiência de desenvolvimento mais próxima do que o mercado exige.

Além do essencial do CRUD, o curso explora pontos que costumam gerar dúvidas em projetos reais, como upload de arquivos e exibição de imagens, uso de recursos estáticos no Express, organização de layouts e parciais com Handlebars, criação de mensagens de feedback para o usuário e ajustes de interface com Bootstrap e CSS externo. Você também verá como lidar com cenários comuns do dia a dia, por exemplo, evitar erros quando um arquivo não é enviado na edição, atualizar dados corretamente com cláusulas específicas no SQL e manter consistência ao remover registros e seus arquivos associados no servidor.

Para evoluir a qualidade do código, o conteúdo avança para melhorias de arquitetura, propondo uma organização mais modular com separação de responsabilidades, reestruturação de rotas, criação de módulos de conexão e serviços e recursos adicionais como pesquisa e ordenação. Assim, você não aprende apenas a fazer funcionar, mas a estruturar de um jeito mais limpo e escalável.

Fechando o ciclo completo, você aprenderá os fundamentos do deploy na KingHost: domínio, hospedagem, configuração de painel, DNS, ajustes no ambiente, uso do NPM em produção, configuração do MySQL no servidor e publicação do projeto. Também verá como habilitar certificado SSL, deixando sua aplicação pronta para rodar em ambiente real com mais confiabilidade. Ao final, você terá uma visão de ponta a ponta para desenvolver, organizar e colocar no ar uma aplicação Node.js integrada ao MySQL.

Conteúdo do curso

  • Aula em vídeo: Node.js e MySQL 01 - Introdução 02m
  • Exercício: Em um gerenciador de produtos usando Node.js, Express, MySQL e Handlebars, quais operações representam corretamente um CRUD?
  • Aula em vídeo: Node.js e MySQL 02 - Sobre o treinamento 06m
  • Exercício: Qual é o objetivo principal do projeto desenvolvido no curso com Node.js, Express, MySQL e Handlebars?
  • Aula em vídeo: Node.js e MySQL 03 - Configurar projeto 08m
  • Exercício: Ao iniciar um projeto Node.js com npm, qual arquivo é gerado para armazenar informações do projeto e dependências (como Express, MySQL e Handlebars)?
  • Aula em vídeo: Node.js e MySQL 04 - Criar arquivo app.js 02m
  • Exercício: Qual comando deve ser executado no terminal para rodar o arquivo app.js e verificar se a mensagem é exibida?
  • Aula em vídeo: Node.js e MySQL 05 - Framework Express 09m
  • Exercício: Após instalar e importar o Express, qual comando cria o servidor para escutar em uma porta (ex.: 8080)?
  • Aula em vídeo: Node.js e MySQL 06 - Nodemon 04m
  • Exercício: Qual é a principal vantagem de usar o nodemon em um projeto Node.js durante o desenvolvimento?
  • Aula em vídeo: Node.js e MySQL 07 - Criar base de dados e tabela 08m
  • Exercício: Qual comando SQL cria a tabela produtos com a coluna codigo sendo chave primária e auto incremental?
  • Aula em vídeo: Node.js e MySQL 08 - Criando conexão com o banco MySQL 07m
  • Exercício: Em uma aplicação Node.js com Express, qual é o módulo instalado via npm para realizar a conexão com um banco de dados MySQL usando a abordagem mostrada?
  • Aula em vídeo: Node.js e MySQL 09 - Utilizando o express-handlebars 09m
  • Exercício: No Express com Handlebars, qual estrutura de pastas é usada para páginas e layout principal?
  • Aula em vídeo: Node.js e MySQL 10 - Bootstrap 05m
  • Exercício: Qual configuração no Express permite disponibilizar os arquivos do Bootstrap instalados via NPM para serem acessados nos templates Handlebars?
  • Aula em vídeo: Node.js e MySQL 11 - Estruturando projeto front-end 10m
  • Exercício: No Bootstrap, qual combinação de classes centraliza uma coluna de 6 unidades dentro de uma linha de 12 colunas?
  • Aula em vídeo: Node.js e MySQL 12 - Estilizando projeto front-end 06m
  • Exercício: Em uma aplicação Node.js com Express e Handlebars, qual é a forma correta de organizar e aplicar um CSS externo no formulário?
  • Aula em vídeo: Node.js e MySQL 13 - Rota de cadastro 07m
  • Exercício: Para que o Express consiga receber corretamente os dados enviados por um formulário HTML via POST (ex.: rota /cadastrar), qual configuração deve ser adicionada na aplicação?
  • Aula em vídeo: Node.js e MySQL 14 - Upload de arquivos 10m
  • Exercício: Para enviar uma imagem via formulário no Express e permitir o upload do arquivo, qual configuração deve ser adicionada na tag
    ?
  • Aula em vídeo: Node.js e MySQL 15 - Cadastrar produtos 11m
  • Exercício: Ao cadastrar um produto no MySQL via Node.js/Express, quais colunas devem ir no INSERT quando o campo código é AUTO_INCREMENT?
  • Aula em vídeo: Node.js e MySQL 16 - Seleção de produtos (parte 1) 03m
  • Exercício: Qual comando SQL é usado para buscar todos os produtos da tabela antes de enviar os dados para o template Handlebars?
  • Aula em vídeo: Node.js e MySQL 17 - Seleção de produtos (parte 2) 12m
  • Exercício: Para que a imagem do produto seja exibida corretamente no Handlebars, qual configuração deve ser feita no Express?
  • Aula em vídeo: Node.js e MySQL 18 - Estilizando listagem de produtos 06m
  • Exercício: Ao estilizar a listagem de produtos, qual conjunto de CSS foi usado para alinhar o nome do produto e o preço na horizontal, deixando um em cada lado?
  • Aula em vídeo: Node.js e MySQL 19 - Rota para remoção de produtos 04m
  • Exercício: Em uma rota de remoção de produtos no Express, como identificar qual produto será removido e qual imagem deve ser excluída junto?
  • Aula em vídeo: Node.js e MySQL 20 - Implementando a remoção de produtos 07m
  • Exercício: Em uma rota de remoção (CRUD) com Node.js/Express e MySQL, qual módulo nativo é usado para excluir a imagem do produto do servidor?
  • Aula em vídeo: Node.js e MySQL 21 - Rota para alteração de produtos 03m
  • Exercício: Em uma rota do Express para abrir o formulário de edição de um produto, como capturar o código do produto pela URL?
  • Aula em vídeo: Node.js e MySQL 22 - Formulário para edição de produtos 06m
  • Exercício: Qual é a principal finalidade do input name codigo adicionado no formulário de edição?
  • Aula em vídeo: Node.js e MySQL 23 - Exibindo dados do produto via formulário 06m
  • Exercício: Ao carregar o formulário de edição de um produto no Express com MySQL, por que é comum usar o retorno[0] após um SELECT?
  • Aula em vídeo: Node.js e MySQL 24 - Rota para edição de produtos 05m
  • Exercício: Ao criar a rota de edição de produtos em Node.js/Express com upload de imagem, qual informação deve ser enviada em um input type=hidden no formulário para permitir substituir o arquivo corretamente?
  • Aula em vídeo: Node.js e MySQL 25 - Resolvendo erro do upload 04m
  • Exercício: Ao editar um produto no Express, como evitar erro quando o usuário não envia uma nova imagem (req.files.imagem)?
  • Aula em vídeo: Node.js e MySQL 26 - Implementando o comando SQL Update 04m
  • Exercício: Em um CRUD com Node.js/Express e MySQL, qual cláusula deve ser usada no UPDATE para garantir que apenas um produto específico seja alterado pelo seu identificador único?
  • Aula em vídeo: Node.js e MySQL 27 - Executar comandos SQL para atualizar produtos 06m
  • Exercício: Ao atualizar um produto (nome/valor/imagem) em uma rota Express com MySQL, qual é a forma correta de executar o SQL e tratar erro antes de prosseguir com a manipulação de arquivos?
  • Aula em vídeo: Node.js e MySQL 28 - Implementando mensagens 03m
  • Exercício: Em uma rota do Express, qual é a forma correta de receber um parâmetro de URL chamado situacao e enviá-lo para um template Handlebars junto com a lista de produtos?
  • Aula em vídeo: Node.js e MySQL 29 - Validação da rota de cadastro 09m
  • Exercício: Em uma rota POST de cadastro no Express com MySQL, qual abordagem valida corretamente os dados antes de executar o INSERT?
  • Aula em vídeo: Node.js e MySQL 30 - Validação da rota de edição 04m
  • Exercício: Em uma rota de edição de produtos no Express, qual validação deve ocorrer antes do bloco try/catch para evitar atualizar dados inválidos?
  • Aula em vídeo: Node.js e MySQL 31 - Validação da rota de remoção 02m
  • Exercício: Ao validar a rota de remoção de produtos no Express, qual é o principal objetivo de envolver o processo em try/catch?
  • Aula em vídeo: Node.js e MySQL 32 - Exibição de mensagens 08m
  • Exercício: Como criar uma condicional de igualdade no Handlebars para exibir mensagens de feedback no CRUD?
  • Aula em vídeo: Node.js e MySQL 33 - Implementando o partials 03m
  • Exercício: No Express com Handlebars, qual é o objetivo principal de usar partials (parciais)?
  • Aula em vídeo: Node.js e MySQL 34 - Considerações 09m
  • Exercício: No módulo extra, qual mudança de arquitetura é proposta para organizar melhor a aplicação Node.js com Express?
  • Aula em vídeo: Node.js e MySQL 35 - Reestruturar rotas 09m
  • Aula em vídeo: Node.js e MySQL 36 - Alterar estrutura da tabela 08m
  • Aula em vídeo: Node.js e MySQL 37 - Barra de navegação 07m
  • Aula em vídeo: Node.js e MySQL 38 - Rota para listagem 07m
  • Aula em vídeo: Node.js e MySQL 39 - Criando pesquisa 07m
  • Aula em vídeo: Node.js e MySQL 40 - Implementando pesquisa 05m
  • Aula em vídeo: Node.js e MySQL 41 - Módulo de conexão 05m
  • Aula em vídeo: Node.js e MySQL 42 - Módulo de serviços 09m
  • Aula em vídeo: Node.js e MySQL 43 - Módulo de rotas 04m
  • Aula em vídeo: Node.js e MySQL 44 - Order By (RAND, ASC e DESC) 06m
  • Aula em vídeo: Node.js e MySQL 45 - Adquirir domínio no Registro.br 06m
  • Aula em vídeo: Node.js e MySQL 46 - Adquirir hospedagem na KingHost 03m
  • Aula em vídeo: Node.js e MySQL 47 - Configurando e conhecendo o painel da KingHost 04m
  • Aula em vídeo: Node.js e MySQL 48 - Configurando DNS 04m
  • Aula em vídeo: Node.js e MySQL 49 - Testando DNS e conhecendo o diretório Whois 03m
  • Aula em vídeo: Node.js e MySQL 50 - Deploy na KingHost (parte 1) 09m
  • Aula em vídeo: Node.js e MySQL 51 - Deploy na KingHost (parte 2) 12m
  • Aula em vídeo: Node.js e MySQL 52 - Utilizando o NPM na KingHost 09m
  • Aula em vídeo: Node.js e MySQL 53 - Configurar o banco MySQL na KingHost 05m
  • Aula em vídeo: Node.js e MySQL 54 - Realizando deploy da nossa aplicação na KingHost 24m
  • Aula em vídeo: Node.js e MySQL 55 - Habilitando certificado SSL 04m
  • Aula em vídeo: Node.js e MySQL 56 - Considerações finais 01m

Este curso gratuito inclui:

6 horas e 24 minutos de curso online em vídeo

Certificado digital de conclusão de curso ( Gratuito )

Exercícios para treinar seus conhecimentos

100% gratuito, do conteúdo ao certificado

Pronto para começar?Baixe o app e comece hoje mesmo.

Instale o app agora

para ter acesso ao curso
Ícone representando cursos de tecnologia e negócios

+ de 5.000 cursos gratuitos

Programação, Inglês, Marketing Digital e muito mais! Aprenda o que quiser, gratuitamente.

Ícone de calendário com alvo representando planejamento de estudos

Plano de estudos com IA

A Inteligência Artificial do nosso aplicativo pode criar um cronograma de estudos para o curso que você escolher.

Ícone de profissional representando carreira e negócios

Do zero ao Sucesso profissional

Melhore seu currículo com nosso Certificado gratuito e depois utilize nossa Inteligência Artificial para buscar seu emprego dos sonhos.

Você também pode utilizar o QR Code ou os Links abaixo

QR Code - Baixar Cursa - Cursos Online

Mais cursos gratuitos em Programação back-end

Ebook + Áudiobooks gratuitos! Aprenda ouvindo ou lendo!

Baixe o Aplicativo agora para ter acesso a + de 5000 cursos gratuitos, exercícios, certificado e muito conteúdo sem pagar nada!

  • Cursos online 100% gratuitos do início ao fim

    Milhares de cursos online em vídeo, ebooks e áudiobooks.

  • Mais de 60 mil exercícios gratuitos

    Para testar seus conhecimentos no decorrer dos cursos online

  • Certificado Digital gratuito válido em todo o Brasil

    Gerado diretamente na galeria de fotos do seu celular e enviado ao seu e-mail

Aplicativo Cursa na tela de ebook, na tela de curso em vídeo e na tela de exercícios do curso, mais o certificado de conclusão de curso