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