Rota Frontendzero → avançado
Rota de estudo autoguiada

Do zero ao frontend avançado, uma etapa de cada vez

Um mapa honesto para aprender desenvolvimento frontend: aprenda a plataforma, escreva JavaScript e TypeScript de verdade, domine um framework e prove que sua UI funciona. Marque cada item — seu progresso fica salvo neste navegador.

Progresso total

—

carregando…

Seu nível agora

Framework dos exemplos

A trilha em 7 etapas
O caminho

As 7 etapas, em ordem

Cada etapa se apoia na anterior. Expanda para ver o que aprender, o que construir e quando você está pronto para avançar.

0/6

O que aprender

O que construir

Pronto para avançar quando: Você explica layout, semântica, eventos e requisições de rede sem depender de um framework.

0/11
0/11
0/14
0/11
0/18
0/7
Onde focar

O que priorizar em cada nível

A rota é a mesma; o que muda é onde gastar energia. Seu nível selecionado fica destacado.

Iniciante

você

Mais: HTML, CSS, JavaScript, um framework, projetos de portfólio.

Menos: Debates de framework, bibliotecas de estado avançadas, microfrontends.

Júnior / Estágio

Mais: Formulários, integração de API, debugging, TypeScript básico, prática de entrevista.

Menos: Diagramas de arquitetura complexos.

Pleno

Mais: Ownership de feature, modelagem de estado, testes, acessibilidade, performance.

Menos: Copiar tutoriais.

Sênior

Mais: Trade-offs, system design, migrações, contratos entre times, debugging em produção.

Menos: Apps isolados de brinquedo.

Especialista

Mais: Uma área de profundidade: design systems, infra de frontend, acessibilidade ou performance.

Menos: Tentar se especializar antes de entregar UI de produto.

Portfólio

Projetos-âncora por etapa

Um projeto que prova cada etapa. Construa, publique e escreva uma nota de engenharia para cada um.

Plataforma

Fluxo de formulário acessível

Labels, validação, comportamento de teclado, layout responsivo.

JavaScript

Tabela de dados pesquisável

Fetch, ordenação, filtro, paginação, estado vazio.

TypeScript

Dashboard alimentado por API

Resposta tipada, modelo de erro, componentes reutilizáveis.

Framework

App de configurações de produto

Tabs, formulários, save otimista, aviso de alterações não salvas.

Arquitetura

Mini fluxo de SaaS

Estados de auth, roteamento, permissões, fluxo tipo billing, testes.

Qualidade

Passada de performance e acessibilidade

Notas de antes/depois, auditoria de teclado, testes críticos.

Entrevistas

Desafios de UI cronometrados

Solução explicável, edge cases, cleanup, melhorias de follow-up.

Nota de engenharia

Para cada projeto, responda a estas perguntas. É isso que separa um portfólio de uma coleção de demos — e o texto abaixo fica salvo no seu navegador.

Ambiente

Ferramentas na ordem certa

Aprenda o essencial primeiro. Adicione o resto quando um problema real pedir — não antes.

Primeiro

O mínimo para trabalhar com confiança.

  • Editor + extensõesVS Code, formatação e lint no salvar.
  • Navegador + DevToolsElements, Console, Network, Application, Lighthouse.
  • Git e GitHubCommits pequenos, branches, pull requests.
  • npm / pnpmInstalar, rodar scripts, entender o package.json.
  • MDNDocumentação de referência da plataforma web.

Depois

Adicione conforme a necessidade aparece.

  • Bundler / dev serverVite ou o build do meta-framework escolhido.
  • Biblioteca de testesVitest/Jest, Testing Library, Playwright.
  • Data fetching / cacheSWR, TanStack Query — depois de entender fetch.
  • Design system / estilosTailwind, tokens, componentes acessíveis.
  • CI e deployPipelines, previews, monitoramento básico.
Cuidado

Erros comuns que atrasam a evolução

Todo mundo tropeça em pelo menos um destes. Reconhecer cedo economiza meses.

  • 1Aprender um framework antes de formulários, eventos e layout em CSS fazerem sentido.
  • 2Buscar uma biblioteca de estado antes de entender estado local, de URL e de servidor.
  • 3Construir só landing pages, sem estados de loading, erro ou vazio.
  • 4Tratar TypeScript como sintaxe em vez de forma de modelar dados não confiáveis.
  • 5Usar IA para gerar código que você não consegue depurar.
  • 6Deixar acessibilidade para o final.
  • 7Escrever testes só depois que o código já ficou emaranhado.
  • 8Estudar system design antes de construir UI suficiente para ter opinião própria.
  • 9Trocar de framework toda vez que uma novidade bomba.
Ritmo

Plano de estudo de 12 meses

Uma referência de ritmo, não um prazo rígido. Ajuste ao seu tempo disponível — o importante é a ordem e os entregáveis.

  1. Semanas 1–4

    Navegador, HTML, CSS, JavaScript básico

    Entregável: Formulário responsivo e widget com API.

  2. Semanas 5–8

    JavaScript avançado e comportamento do DOM

    Entregável: Tabela pesquisável, busca com debounce, estado persistido.

  3. Semanas 9–12

    TypeScript e fundamentos de framework

    Entregável: Componentes tipados e fluxo de formulário.

  4. Meses 4–5

    Arquitetura de aplicação

    Entregável: App multi-página com roteamento, estados de auth, dados de API e tratamento de erro.

  5. Mês 6

    Passada de qualidade

    Entregável: Testes, correções de acessibilidade, notas de performance, portfólio publicado.

  6. Meses 7–12

    Entrevistas e profundidade

    Entregável: Prática de entrevista, system design, projetos mais fortes, exploração de especialização.

Reta final

Áreas de entrevista para praticar

Comece por questões rápidas de cada área, depois UI coding real e só então system design.

Conteúdo do framework ajustado para:

JavaScript

closures · event loop

Arrays, objetos, promises, closures, timers, event loop, DOM.

CSS

flex · grid · z-index

Layout, responsividade, especificidade, posicionamento, estados acessíveis.

Framework

react

React: estado local vs. context, efeitos e cleanup, keys em listas, formulários controlados, memoização quando medida, error boundaries.

depende do framework

APIs

REST · status · retry

REST, status codes, paginação, cache, retries, estados de erro.

TypeScript

unions · generics

Props de componente, unions, generics, narrowing, dados de API.

UI coding

tabs · autocomplete

Formulários, tabelas, autocomplete, tabs, carousel, file explorer.

System design

data flow · failure

Fluxo de dados, fronteiras de componente, performance, acessibilidade, modos de falha.