Este compêndio tem como propósito unificar de forma organizada todo material gratuito disponibilizado pela Rocketseat. Será encontrado materiais do Blog, Youtube e Instagram.
Starter
Cursos gratuitos para quem está dando os primeiros passos em novas tecnologias!
Javascript básico
Javascript ES6+
Node.js
React.js
React Native básico
Tabela de Conteúdos
Javascript
- Instagram - Controlando criação/edição com Axios
- Instagram - Get/set por caminho em objetos
- Instagram - Operação em estilos CSS-in-JS
- Instagram - Condicionais short-circuit
- Instagram - Gerando e validando hash de passwords
- Instagram - Utilizando transform de decorators
- Instagram - Formatação de data com Javascript puro
- Instagram - Formatação monetária com Javascript puro
- Blog - Debounce vs. Throttle no Javascript
- Blog - Ambiente Javascript: Dicas, VSCode e terminal
- Instagram - Manipulando datas com o MomentJS
- Instagram - Criando condicionais por objeto
- Instagram - Aplicando validações com Validator
- Instagram - Recuperando e criando Query String
- Instagram - Utilizando Tagged Template Literals
- Instagram - Preview de input de imagem
- Instagram - Aplicando timeouts para chamadas à API
- Instagram - Criando API fake para seu front-end
- Youtube - Style guides Javascript com ESLint, Prettier e EditorConfig | Diego Fernandes
ES6/ES7/ES8
- Instagram - ES6: Funções de iterações
- Instagram - Shorthands: Arrow Function
- Instagram - Utilizando funções assíncronas do ES6
- Instagram - Utilizando atribuição no ES6
- Instagram - Utilizando async/await do ES2017
- Youtube - Configurando NodeJS com ES6
- Blog - CodeQuinta #7 - Features do ES6, ES7 e ES8 produtivas
Promise e async/await
- Instagram - Trocando Promise por async/await
- Instagram - Alterando callbacks para Promises
- Instagram - Lendo arquivos em partes com async/await
- Instagram - Utilizando .finally() em Promises
- Instagram - Chamadas consecultivas em Promises
- Blog - Javascript assíncrono: async/await
- Blog - Javascript assíncrono: Promises
- Instagram - Iterações assíncronas com .map
- Instagram - Evitando o bloqueio do fluxo assíncrono
React Native
Start
- Youtube - Iniciando com React Native em 2018 | Diego Fernandes
- Blog - 3 passos para aprender React Native
- Blog - 5 erros comuns de um desenvolvedor React/React Native
- Blog - 5 dicas de performance no React Native
- Blog - Criando template de React Native para novos projetos
- Blog - Expo: o que é, para que serve e quando utilizar?
- Youtube - Iniciando no React Native [LINK ATUALIZADO NA DESCRIÇÃO] | Diego Fernandes
Componentes
- Blog - Higher-Order Components (HOCs) no React e React Native
- Blog - Context API do React 16.3.0 e métodos de ciclo de vida
- Instagram - Utilizando .bind para evitar criação de funções
- Instagram - Repassando funções a componentes
- Instagram - Criando componente reutilizável
- Instagram - Repassando componente como propriedade
- Instagram - Dois novos métodos de ciclo de vida
- Instagram - Utilizando render props
- Instagram - Utilizando setState funcional
- Instagram - Utilizando <Fragment>
- Instagram - O this.setState é assíncrono
- Instagram - Componente vs PureComponent
- Instagram - Utilizando o callback do setState
- Instagram - Capturando erros de execução no componente
- Instagram - Utilizando async/await no ciclo do componente
- Instagram - Componente do BackButton no Android
- Instagram - Utilizando pure components no lugar de classes
- Instagram - Utilizando Arrow Functions nos componentes
- Instagram - Componentes para cada plataforma
Debug
- Blog - 3 ferramentas de debug para React Native
- Instagram - Utilizando a biblioteca Reactotron para debug
Imagem
- Blog - Tipos de navegação no React Native
- Blog - Navegação entre telas no React Native com React Navigation V2
- Blog - Autenticação JWT no React Native com API REST em NodeJS
- Blog - Fluxo de autenticação com React Native
- Instagram - Deep Linking com React Navigation
- Instagram - Rotas autenticadas com React Navigation
Câmera
Estilização
- Blog - Dicas de UX para aplicações React Native
- Blog - Como organizar estilos no React Native
- Blog - Utilizando NativeBase no React Native
- Blog - Utilizando fontes de ícones no React Native
- Instagram - Utilizando styled-components
- Instagram - Ocupando todo espaço com componente
- Instagram - Separando estilos genéricos dos componentes
- Instagram - Estilos específicos para plataforma no React Native
- Youtube - CodeQuinta #6 - Construindo layouts no React Native
- Youtube - Entendendo o FlexBox no React Native | Diego Fernandes
- Youtube - Utilizando Styled Components (CSS-in-JS) no ReactJS e React Native | Diego Fernandes
Efeitos
- Blog - Implementando Shimmer Effect no React Native
- Blog - Scroll infinito no React Native
- Blog - Criando efeito de Lazy Load em imagens no React Native
- Youtube - Quick actions (3D/Force touch) no React Native | Diego Fernandes
- Instagram - Scroll infinito em FlatList
Formulários
Mapas
- Blog - Utilizando mapas no React Native com Mapbox
- Youtube - CodeQuinta #4 - Mapas no React Native
- Instagram - Renderizando mapas com a biblioteca do AirBnB
- Instagram - Monitorando localização do usuário
Offline First
- Blog - Offline first: como funciona e como aplicar no React Native?
- Instagram - Descobrindo se o usuário está conectado
- Youtube - Fila de ações offline first no React Native com Redux Saga | Diego Fernandes
- Blog - Planejando uma aplicação Offline First no React Native
Redux
- Blog - Redux: O passo a passo
- Blog - Estrutura Redux escalável com Ducks
- Blog - Tornando o estado do Redux imutável
- Youtube - Selectors no Redux utilizando reselect
- Youtube - CodeQuinta #1 - Arquitetura Flux com Redux do zero
- Youtube - CodeQuinta #3 - Async com Redux Saga
- Instagram - Realizando operações no estado do Redux
- Instagram - Adicionando um timeout à uma request
- Instagram - Testando reducers de Redux com Jest
- Instagram - Fluxo do Redux
- Instagram - Trabalhando com estruturas imutáveis
- Instagram - Escalando estrutura Redux com Duck Pattern
GraphQL
- Instagram - Conectando um componente ao GraphQL
- Yoututbe - CodeQuinta #8 - Iniciando com GraphQL no React/React Native
Firebase
Testes
Outros
- Blog - Reduzindo o tamanho do APK para Android no React Native
- Blog - React Native em 2019, nova arquitetura e comparações com Flutter
- Blog - Atualizando aplicações React Native para a última versão
- Blog - Configurando deep linking no React Native
- Blog - As melhores features do ES6, ES7 e ES8
- Blog - Utilizando caminhos absolutos para imports no React Native
- Blog - Context API do React 16.3.0 e métodos de ciclo de vida
- Youtube - CodeQuinta #9 | Consumindo API REST com React Native (CRUD)
- Instagram - Controlando área "clicável" de botões
- Instagram - Utilizando o clipboard
- Instagram - Manipulando o comportamento da tela com o teclado
- Instagram - Acessando dados de geolocalização do usuário
- Instagram - Utilizando PropTypes do componente filho
- Instagram - Interceptando requisiões no Axios
- Youtube - Caminhos relativos no ReactJS com create-react-app | Diego Fernandes
- Instagram - Lidando com duplo clique
- Instagram - Componentes condicionais por plataforma
- Instagram - Captando informações do smartphone
- Youtube - Configurando ícone, splash screen e nome do app iOS no React Native | Claudio Orlandi
- Youtube - Configurando ícone, splash screen e nome do app Android no React Native | Claudio Orlandi
- Youtube - Recriando a interface do Uber com React Native
Séries
- Blog - [Airbnb Clone - AdonisJS + React + React Native] Iniciando com React Native: Navegação e Autenticação com JWT (parte 4)
- Blog - [Airbnb Clone - AdonisJS + React + React Native] Instalando o Mapbox e listando imóveis no React Native (parte 5)
- Blog - [Airbnb Clone - AdonisJS + React + React Native] Upload de Imagens e uso da Câmera no React Native (parte 6)
- Blog - [Airbnb Clone - AdonisJS + React + React Native] Estilizando as Annotations do Mapbox no React Native (parte 7)
NodeJS
Express
- Blog - Configurando o ORM Sequelize no NodeJS com ExpressJS
- Blog - Autenticação JWT no React Native com API REST em NodeJS
- Blog - Iniciando com middlewares no Express.js
- Youtube - Validando entrada de dados com Sequelize no NodeJS | Higo Ribeiro
Adonis
- Blog - Iniciando com AdonisJS, um framework completo para NodeJS
- Youtube - CodeQuinta #10 | API em AdonisJS com ReactJS do zero!
- Youtube - CRUD e relacionamentos no AdonisJS | Diego Fernandes
Deploy
- Youtube - Deploy de aplicações NodeJS à AWS com Docker | Diego Fernandes
- Blog - PM2: Como utilizar no NodeJS e funcionalidades secretas
Outros
- Blog - Por que escrever testes automatizados se eu mesmo posso testar?
- Blog - Iniciando com GraphQL no NodeJS e ExpressJS
- Blog - NodeJS: Vale a pena? Vantagens, vagas e salário
- Blog - Server-side rendering (SSR) com ReactJS e Next.js
- Instagram - Lendo arquivos em partes com async/await
- Youtube - Chat em tempo real com NodeJS + Socket.io
- Youtube - Iniciando com server-side rendering (SSR) no ReactJS com Next.js
- Youtube - Ambiente de desenvolvimento NodeJS com Docker e Docker Compose
- Instagram - Leitura de arquivo CSV no NodeJS
- Blog - AdonisJS vs ExpressJS: Quando utilizar cada um?
Séries
- Blog - [Airbnb Clone - AdonisJS + React + React Native] Iniciando com AdonisJS: Autenticação JWT e API REST (parte 1)
- Blog - [Airbnb Clone - AdonisJS + React + React Native] Criando CRUD e relações em API REST no AdonisJS (parte 2)
- Blog - [Airbnb Clone - AdonisJS + React + React Native] Upload de imagens e geolocalização no AdonisJS (parte 3)
- Youtube - [API NodeJS + Express + Mongo] Estrutura e cadastro (parte 1)
- Youtube - [API NodeJS + Express + Mongo] Autenticação (parte 2)
- Youtube - [API NodeJS + Express + Mongo] Recuperação de senha com NodeMailer (parte 3)
- Youtube - [API NodeJS + Express + Mongo] CRUD e relacionamentos com MongoDB (parte 4)
ReactJS
Start
- Blog - React do zero: componentização, propriedades e estado
- Blog - React do zero: ciclo de vida, stateless components e arquitetura flux
- Youtube - Iniciando no ReactJS
Componentes
Redux
- Youtube - Selectors no Redux utilizando reselect
- Instagram - Manipulando objetos mutáveis
- Youtube - Organizando o Redux com Duck Pattern e Redux Sauce | Diego Fernandes
Estilização
- Youtube - Controlando autenticação em rotas no ReactJS
- Youtube - Conectando o React Router DOM ao Redux no ReactJS | Diego Fernandes
Outros
- Instagram - Aplicando máscara em inputs
- Instagram - Criando componente de cartão de crédito
- Youtube - Persistindo store do Redux no ReactJS com Redux Persist
- Youtube - Caminhos relativos no ReactJS com create-react-app
- Youtube - CodeQuinta #10 | API em AdonisJS com ReactJS do zero!
- Youtube - Theme Switcher com ReactJS e nova Context API
- Instagram - Utilizando debounce em inputs
- Instagram - A melhor maneira de manipular dados no React
- Youtube - Caminhos relativos no ReactJS com create-react-app | Diego Fernandes
- Instagram - Utilizando Hooks no React
- Blog - React Hooks: Como utilizar, motivações e exemplos práticos
Séries
- Blog - [Airbnb Clone - AdonisJS + React + React Native] Iniciando com ReactJS: Navegação e Autenticação com JWT (parte 8)
- Blog - [Airbnb Clone - AdonisJS + React + React Native] Instalando o Mapbox e listando os imóveis no ReactJS (parte 9)
- Blog - [Airbnb Clone - AdonisJS + React + React Native] Utilizando o ModalRoute e fazendo upload de imagens (parte 10)
- Blog - [Airbnb Clone - AdonisJS + React + React Native] Exibindo informações do imóvel com ModalRoute (parte 11)
Outros
- Blog - Firebase: serviços, vantagens, quando utilizar e integrações
- Blog - SaaS: Single tenant ou Multi-tenant, qual escolher?
- Blog - 5 ferramentas em alta para desenvolvedores React
- Blog - O que estudar em 2018 como front-end?
- Blog - Padronizando código em seu time
- Blog - Integração contínua (CI) do zero
- Blog - PWA: O que é? Vale a pena? Quando utilizar?
- Blog - Git & Github: O que é? Por que? Como iniciar?
- Youtube - 7 passos para aprender a programar em qualquer linguagem
- Youtube - Iniciando com Git
- Youtube - Pré-processador SASS
- Youtube - Iniciando com Vagrant
- Youtube - Servidor PHP no Vagrant
- Youtube - Devo ser front-end, back-end ou full stack?
- Youtube - CodeQuinta #5 - Fluxo Git & Github
- Instagram - Query com filtro e paginação
- Instagram - Controlando states com React Hooks
Séries
- Youtube - Fala Dev #1 - Como comecei a programar? Por que criamos a Rocketseat? Nossa stack
- Youtube - Fala Dev #2 - AirBnB largou o React Native? Projeto sonar, office em RN?
- Youtube - Fala Dev #3 - Reagindo à nova versão do React Native
- Youtube - Fala Dev #4 - Academy e novos instrutores da Rocketseat | Diego Fernandes
- Youtube - Fala Dev #5 - 5 dicas para uma carreira sólida como programador | Diego Fernandes
- Youtube - Fala Dev #6 - Júnior, pleno ou sênior, qual a diferença? | Diego Fernandes
- Youtube - Diário de Bordo #1 - Três dias offline
- Youtube - Behind the Code #1 - Autenticação no Adonis com TDD
- Youtube - Behind the Code #02 - Recuperação de senha e envio de e-mail no Adonis
- Youtube - Behind the Code #03 - Code review do app mobile
- Youtube - Behind the Code #04 - CRUD de workshops
- Youtube - Behind the Code #05 - Inscrição nos Workshops
- Youtube - Behind the Code #06 - Feature de transcrição no Skylab
Podcasts
- RocketCast #1 - Como comecei a programar? Como surgiu a Rocketseat e nossa stack!
- RocketCast #2 - AirBnB largou o React Native? Projeto sonar, office em RN?
- RocketCast #3 - Reagindo à nova versão do React Native
Rocketseat
Para conhecer um pouco mais sobre a Rocketseat, acompanhe-nos nas redes sociais: