Curso online gratuitoNode.js, Express, MySQL e Handlebars (CRUD deploy na KingHost)
Duração do curso online: 6 horas e 24 minutos
Novo
Curso gratuito de Node.js com Express, MySQL e Handlebars para criar um CRUD completo e fazer deploy em hospedagem, com projeto prático.
Neste curso gratuito, aprenda sobre
Introdução e visão geral do projeto
Configuração inicial do ambiente e servidor com Express
Banco de dados MySQL e integração com Node.js
Templates com Handlebars e front-end com Bootstrap
Cadastro de produtos e upload de imagens (Create)
Listagem e exibição de produtos (Read) e ajustes de layout
Remoção de produtos e arquivos (Delete)
Edição de produtos e atualização no MySQL (Update)
Mensagens, validações e componentes reutilizáveis no Handlebars
Refatoração e melhorias de arquitetura e funcionalidades
Domínio, hospedagem, DNS e deploy na KingHost
Descrição do curso
Aprenda a criar uma aplicação web completa com Node.js, Express, MySQL e Handlebars, desenvolvendo um CRUD do zero com foco em práticas comuns do back-end. Este curso online gratuito apresenta um caminho claro para estruturar um projeto, configurar o ambiente e organizar rotas, serviços e conexão com banco de dados, evoluindo do básico até uma aplicação pronta para uso.
Ao longo das aulas, você constrói telas e fluxos de cadastro, listagem, edição e remoção, trabalhando com validações, mensagens de retorno e recursos de interface para dar mais consistência à experiência do usuário. Também são abordados pontos importantes do dia a dia, como upload de arquivos, organização do front-end com Bootstrap, uso de templates e partials, além de pesquisas e ordenações para melhorar a navegação e a apresentação dos dados.
Para fechar o ciclo de desenvolvimento, o curso mostra como preparar a aplicação para publicação, passando por configuração de domínio, DNS, hospedagem e banco de dados em ambiente de produção, além de ajustes para uso do NPM e habilitação de SSL. É uma opção indicada para quem quer consolidar fundamentos de programação back-end com um projeto prático e com etapas reais de deploy.
Conteúdo do curso
Aula em vídeo: Node.js e MySQL 01 - Introdução02m
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 treinamento06m
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 projeto08m
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.js02m
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 Express09m
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 - Nodemon04m
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 tabela08m
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 MySQL07m
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-handlebars09m
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 - Bootstrap05m
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-end10m
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-end06m
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 cadastro07m
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 arquivos10m
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 produtos11m
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 produtos06m
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 produtos04m
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 produtos07m
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 produtos03m
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 produtos06m
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ário06m
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 produtos05m
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 upload04m
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 Update04m
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 produtos06m
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 mensagens03m
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 cadastro09m
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ção04m
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ção02m
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 mensagens08m
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 partials03m
Exercício: No Express com Handlebars, qual é o objetivo principal de usar partials (parciais)?
Aula em vídeo: Node.js e MySQL 34 - Considerações09m
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 rotas09m
Aula em vídeo: Node.js e MySQL 36 - Alterar estrutura da tabela08m
Aula em vídeo: Node.js e MySQL 37 - Barra de navegação07m
Aula em vídeo: Node.js e MySQL 38 - Rota para listagem07m
Aula em vídeo: Node.js e MySQL 39 - Criando pesquisa07m
Aula em vídeo: Node.js e MySQL 40 - Implementando pesquisa05m
Aula em vídeo: Node.js e MySQL 41 - Módulo de conexão05m
Aula em vídeo: Node.js e MySQL 42 - Módulo de serviços09m
Aula em vídeo: Node.js e MySQL 43 - Módulo de rotas04m
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.br06m
Aula em vídeo: Node.js e MySQL 46 - Adquirir hospedagem na KingHost03m
Aula em vídeo: Node.js e MySQL 47 - Configurando e conhecendo o painel da KingHost04m
Aula em vídeo: Node.js e MySQL 48 - Configurando DNS04m
Aula em vídeo: Node.js e MySQL 49 - Testando DNS e conhecendo o diretório Whois03m
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 KingHost09m
Aula em vídeo: Node.js e MySQL 53 - Configurar o banco MySQL na KingHost05m
Aula em vídeo: Node.js e MySQL 54 - Realizando deploy da nossa aplicação na KingHost24m
Aula em vídeo: Node.js e MySQL 55 - Habilitando certificado SSL04m
Aula em vídeo: Node.js e MySQL 56 - Considerações finais01m