Aprenda JavaScript do zero ao avançado, crie um WhatsApp clone, Dropbox. Aprenda NodeJS, Express, Socket, Firebase.
Conteúdo do Curso
Seção 1
01:39:264 aulas
Introdução ao JavaScript e Preparação do Ambiente
Seção 2
03:52:2322 aulas
Projeto Calculadora com JavaScript
- C01 - Estruturando o Projeto 7:38
- C02 - Orientação a Objetos e MVC 13:52
- C03 - Método Construtor e Encapsulamento 14:01
- C04 - Manipulando o DOM 14:55
- C05 - Data e Hora 19:46
- C06 - querySelector 6:13
- C07 - Adicionando Evento Click 8:30
- C08 - Aplicando vários Eventos usando split() 8:46
- C09 - Switch 15:05
- C10 - Adicionando operações - isNaN e Array.length 19:19
- C11 - Eval - Validando o primeiro operador e calculando resultado 15:01
- C12 - For - Procurando o último número do Array 7:50
- C13 - Botão Porcento 8:53
- C14 - Clicando mais de uma vez no botão igual 20:30
- C15 - Botão Ponto 8:43
- C16 - Correções de Bugs com o Ponto 3:52
- C17 - Eventos de Teclado 9:15
- C18 - Ctrl + c e Ctrl + v 8:58
- C19 - Trabalhando com Áudio 9:03
- C20 - Definir o valor máximo 3:23
- C21 - Tratar outros erros no eval() com Try Catch 4:53
- C22 - Bonus 3:57
Seção 3
05:58:3532 aulas
Gerenciamento de Usuários
- G1 - Script incorporado e arquivo externo 4:45
- G2 - Manipulando o DOM 8:08
- G3 - Variáveis 10:55
- G4 - Variáveis e Seletores 11:08
- G5 - For Each 9:10
- G6 - IF e ELSE 8:48
- G7 - Trabalhando com Json 9:16
- G8 - Trabalhando com Eventos no JavaScript 11:17
- G9 - Trabalhando com Funções 11:18
- G10 - Programação Orientada a Objetos - Classes e MVC 16:16
- G11 - Programação Orientada a Objetos - MVC - Controller 23:22
- G12 - O operador Spread ... 5:04
- G13 - Trabalhando com arquivos - File Reader 11:21
- G14 - Trabalhando com Promise no JavaScript 6:30
- G15 - Ajustando a View do Projeto - Operador Ternário 8:17
- G16 - Trabalhando com Datas, Getters e Setters 30:04
- G17 - Trabalhando com Métodos Estáticos 6:09
- G18 - Validando Formulários 14:07
- G19 - Atualizando Estatísticas - Usando dataset 19:23
- G20 - Trabalhando com Edição de Dados - Editando a View 4:19
- G21 - Trabalhando com Edição de Dados - Programando o Evento no Botão Editar 9:50
- G22 - Trabalhando com Edição de Dados - Utilizando o laço For In para objetos 8:08
- G23 - Trabalhando com Edição de Dados - Editando valores com Radio e Checkbox. 5:53
- G24 - Trabalhando com Edição de Dados - Alterando dados do Objeto 12:03
- G25 - Trabalhando com Edição de Dados - Editando a Imagem com FileReader 15:50
- G26 - Excluindo Dados do Objeto 4:05
- G27 - Armazenando dados na Sessão com sessionStorage 16:36
- G28 - Armazenando Dados com localStorage 3:31
- G29 - Refactoring - Otimizando o Template 11:26
- G30 - Trabalhando com localStorage - Editando dados no localStorage 21:55
- G31 - Trabalhando com localStorage - Correção com Object.assign 3:11
- G32 - Trabalhando com localStorage - Excluindo dados no localStorage 16:30
Seção 4
01:37:2716 aulas
NodeJS - JavaScript no Back-End (No Lado do Servidor)
- N01 - Introdução ao NodeJS 5:41
- N02 - Instalando o NodeJS 4:59
- N03 - Criando um Servidor Web com Node.JS 5:05
- N04 - Detectando URL diferente 6:13
- N05 - Entendendo o Package.Json e Instalando o Express 7:47
- N06 - Nodemon e Criando o Servidor com Express 6:49
- N07 - Separando Rotas do Arquivo Principal 10:13
- N08 - Carregando Rotas com Consign 6:05
- N09 - Recebendo dados via POST e instalando Postman 8:53
- N10 - Persistência de dados com o NeDB (Banco de dados JavaScript) 6:33
- N11 - Listando os usuários do banco NeDB 3:54
- N12 - Refatorando Sistema e Otimizando o código 4:37
- N13 - Obtendo dados de um usuário 4:33
- N14 - Editando um usuário 4:11
- N15 - Excluindo um usuário 3:44
- N16 - Validando dados recebidos via Post 8:10
Seção 5
01:17:1710 aulas
Projeto - Gerenciamento de Usuários - RESTfull API com Restify
- U01 - Criando novo projeto com Express Generator 21:31
- U02 - Usando Restify para acessar API REST 5:26
- U03 - Ajax com XMLHttpRequest 9:25
- U04 - Adequando os dados salvos no servidor RESTful 2:18
- U05 - Refatorando para uma classe HttpRequest 6:41
- U06 - Consumindo Rotas, POST, PUT e DELETE com Restify 4:10
- U07 - Usando Ajax com método POST e PUT 11:41
- U08 - Usando Ajax com método DELETE 3:27
- U09 - Alterando o limite de bytes enviados por POST 3:21
- U10 - Refatorando para fetch API 9:17
Seção 6
03:44:2023 aulas
Projeto DropBox Clone
- D01 - Clone do HTML e CSS do projeto 7:40
- D02 - Criando projeto com Express Generator 3:11
- D03 - Criando Controller e Evento Click no botão Enviar Arquivos 10:07
- D04 - Enviando arquivos usando Ajax e Promise.all() 8:06
- D05 - Recebendo arquivos no Node.js com Formidable 8:05
- D06 - Atualizando View com informações do progresso do Upload 24:31
- D07 - Organizando templates de tipos de arquivos 7:40
- D08 - Adicionar o Firebase a sua Aplicação Web 6:33
- D09 - Gravando dados do Firebase Database 11:30
- D10 - Listando dados do Firebase Database 10:31
- D11 - Selecionando arquivos 3:18
- D12 - Selecionando arquivos com CTRL ou SHIFT 13:59
- D13 - Criando e disparando eventos 4:50
- D14 - Menu de opções de acordo com arquivos selecionados 6:49
- D15 - Renomeando arquivo 5:20
- D16 - Excluindo arquivos 22:54
- D17 - Nova Pasta 4:38
- D18 - Navegando nas pastas ou abrindo arquivos 24:49
- D19 - Criando rota para abrir arquivo 5:10
- D20 - Refatorando para Firebase Storage - Upload 17:10
- D21 - Excluindo arquivo do Firebase Storage 3:39
- D22 - Excluindo Diretório Firebase 12:16
- D23 - Abrindo o arquivo 1:34
Seção 7
10:39:0250 aulas
Projeto WhatsApp Clone
- W01 - Clonando layout HTML e CSS do Projeto 4:28
- W02 - Criando controle principal do App 12:08
- W03 - Prototype 14:33
- W04 - Eventos para abrir/fechar os painéis "Editar Perfil" e "Adicionar Contato" 9:46
- W05 - Obtendo dados dos painéis e usando FormData 13:09
- W06 - Clique no "Menu Anexar" - Usando bind() e removeEventListener() 13:12
- W07 - Eventos no "Menu Anexar" 11:53
- W08 - Eventos de gravação do microfone e timer de gravação 7:06
- W09 - Função para formatar milissegundos em minuto e segundo 3:42
- W10 - Eventos do campo "Digitar Mensagem" 8:39
- W11 - Inserir Emoji - cloneNode(), dispatchEvent() e new Event() 5:54
- W12 - Inserir Emoji getSelection(), createRange() e DocumentFragment() 9:41
- W13 - Ativando a câmera com API MediaDevices.getUserMedia() 8:49
- W14 - Criando um servidor Web com Webpack Dev Server 8:43
- W15 - Arquivo de configuração do Webpack - webpack.config.js 8:43
- W16 - Importando e Exportando módulos com Webpack 5:27
- W17 - Parando de capturar imagem da câmera - getTracks() 4:36
- W18 - Tirar fotografia da câmera com canvas 14:11
- W19 - Enviando mensagens de documentos anexos 20:48
- W20 - Lendo capa de arquivo PDF e gerando imagem com PDF.js 27:45
- W21 - Ativando o microfone com API MediaDevices.getUserMedia() 6:46
- W22 - Criando classe para eventos em objetos 12:56
- W23 - Gravando áudio capturado pelo microfone com MediaRecorder 21:44
- W24 - Criando evento para o visualizar o tempo de gravação 5:52
- W25 - Configurando o Firebase no projeto 10:19
- W26 - Firebase Authentication 14:18
- W27 - Salvando usuário autenticado no banco de dados 16:51
- W28 - Aplicando padrão DAO ao objeto User e criando Evento de dados alterados 29:25
- W29 - Atualizando Dados do perfil do Usuário 3:58
- W30 - Adicionando um contato no Whatsapp Clone 8:55
- W31 - Listando os contatos 12:04
- W32 - Evento de click em um contato 5:21
- W33 - Classe Message 11:28
- W34 - Class Chat - Criando uma conversa e usando função btoa() conversão base64 25:20
- W35 - Enviando uma mensagem de texto 8:03
- W36 - Lendo as mensagens de um chat em Tempo Real (Realtime) 13:59
- W37 - Descendo o Scroll automaticamente se estiver encostado em baixo 14:43
- W38 - Filtrando lista de contatos 5:48
- W39 - Atualizando status de mensagem (wait, sent e read) 25:05
- W40 - Enviando imagem da Galeria como anexo 19:23
- W41 - Enviando foto como anexo 18:31
- W42 - Enviando Documento como anexo 30:34
- W43 - Enviando Contato como anexo 14:29
- W44 - Enviar mensagem para contato anexado 9:25
- W45 - Gravando e Enviando Audio como anexo 23:48
- W46 - Atualizando dados do perfil de usuário 7:17
- W47 - Atualizando última mensagem enviada manualmente 4:57
- W48 - Firebase Cloud Functions 9:27
- W49 - Criando função que atualiza a última mensagem enviada 19:08
- W50 - Notificação desktop de novas mensagens 15:55
Seção 8
09:15:0850 aulas
Projeto Restaurante Saboroso
- MY01 - Visão Geral do Projeto 3:57
- MY02 - Criando a Estrutura do Projeto 7:50
- MY03- Instalando e Configurando o MySQL 9:51
- MY04 - Conectando o NodeJS com MySQL 9:29
- MY05 - Exibindo dados do Banco de Dados com EJS Embedded JavaScript templates 12:57
- MY06 - EJS Include 8:50
- MY07 - Organizando o HEADER com Includes 11:06
- MY08 - Organizando o FOOTER com Includes 5:33
- MY09 - Organizando o Conteúdo com Includes 14:39
- MY10 - Refatorando o HEADER e FOOTER reduzindo os Includes 8:42
- MY11 - Efetuando Reserva com Método POST para o MySQL 32:46
- MY12 - Enviando Contato com Método POST para o MySQL 14:00
- MY13 - Criando Rotas para Administração 7:45
- MY14 - Express Session com Redis 15:09
- MY15 - Efetuando Login na Administração 13:09
- MY16 - Criando um Middleware em nível de roteador para validar Sessão de Login 14:27
- MY17 - Organizando a Administração em Includes 7:16
- MY18 - Links do Menu 10:29
- MY19 - Formatando Menu Ativo 5:15
- MY20 - Exibindo dados do usuário autenticado 5:46
- MY21 - Tela Inicial consultando dados no MySQL 5:36
- MY22 - Administração do Menu - Consultando dados no MySQL 6:29
- MY23 - Administração do Menu - Criando Novo Menu 8:05
- MY24 - Administração do Menu - Enviando Novo Menu via POST 13:16
- MY25 - Administração do Menu - Alterando dados do Menu 9:19
- MY26 - Criando um Plugin para ler e exibir um arquivo de Imagem 10:08
- MY27 - Criando Prototype para enviar formulário via Ajax 8:12
- MY28 - Administração do Menu - Alterando dados via POST 11:24
- MY29 - Administração do Menu - Excluindo dados 9:29
- MY30 - Administração da reserva CREATE 10:11
- MY31 - Administração da reserva READ 3:48
- MY32 - Formatando datas com Moment.js e EJS 4:54
- MY33 - Administração da reserva UPDATE 5:10
- MY34 - Administração da reserva DELETE 3:45
- MY35 - Criando componente Grid para tabela 14:48
- MY36 - Trabalhando com eventos do componente 9:10
- MY37 - Refatorando e criando método para botão DELETE 5:53
- MY38 - Utilizando componente HcodeGrid na tela de Menus 7:32
- MY39 - Administração dos usuários criando rotas 6:05
- MY40 - Administração dos usuários criando telas 7:06
- MY41 - Administração dos usuários alterando senha 31:20
- MY42 - Administração dos contatos 8:09
- MY43 - Administração dos e-mails recebidos 17:03
- MY44 - Trabalhando com paginação de dados 28:51
- MY45 - Trabalhando com paginação de dados navegando entre as páginas 29:14
- MY46 - Trabalhando com paginação de dados, botões anterior e próxima 4:24
- MY47 - Trabalhando com gráficos usando Chart.JS 15:20
- MY48 - Obtendo dados do servidor e atualizando gráfico 11:06
- MY49 - Trabalhando em tempo real com Socket.io, Instalando e configurando 11:54
- MY50 - Trabalhando em tempo real com Socket.io, Emit e On 18:31