⭐ Não deixe de deixar o seu start no repositório.
- Pesquisar artigos e vídeos de como funciona a internet
- O que é HTTP
- Funcionamento de um browser
- DNS
- Hosting
Antes de ir para linguagem de programação e passar para o roadmap de qualquer uma das áreas, o ideal é que você estude a lógica de programação, que irá treinar o seu raciocínio para resolução de problemas através de pseudo códigos. Existem diversas formas de se estudar essa matéria, mas minha indicação é que você estude através de algoritmos em Portugol.
Site para treinar e aprender portugol:
Sequência de estudos:
- Variáveis, Comandos de entrada e de saída
- Operadores Aritméticos
- Operadores Relacionais
- Operadores Lógicos
- Estruturas Condicionais
- Estruturas de Repetição
- Funções
- Vetores
- Matriz
- Sintaxe e Variáveis
- Comandos de entrada e saída (Dica: biblioteca prompt-sync)
- Operadores Matemáticos
- Operadores de Comparação
- Operadores Lógicos
- Estruturas de Condição
- Funções
- Objetos
- Arrays
- Interação com Arrays
- Métodos de cada tipo de variável
- Datas
- Promises
Para facilitar o desenvolvimento de aplicações JavaScript, precisamos de instalar bibliotecas que nos ajudem a fazer determinadas tarefas de maneira mais efetivas. Essas libs podem ajudar desde com a manipulação de dadas, moedas, chamadas de API, conexão com banco de dados e outras funcionalidades que envolvem a parte lógica, ou até mesmo nos fornecer pacotes visuais com elementos pré-feitos. Os dois principais package managers são:
- npm: https://www.npmjs.com/
- yarn: https://yarnpkg.com/
Recomendo que você leia a documentação dos dois para entender um pouco mais como funcionam e os instale na sua máquina.
- Inicializar um repositório (git init)
- Checkar o status (git status)
- Adicionar um arquivo pra stage area (git add)
- Adicionar a modificações ao histórico (commit)
- Visualizar histórico (git log)
- Verificar modificações nos arquivos (git diff)
- Renomear, remover e mover arquivos (rm, mv)
- Restaurar arquivos e alterar commits (restore, amend)
- Navegar para um commit passado (git checkout)
- Limpar working directory (git clean)
- Reverter um commit (git revert)
- Ignorar arquivos (git ignore)
- Branches (branch)
O HTML tem o papel de ser o documento da página web onde os elementos serão ordenados e renderizados. Já o CSS tem o papel de estilizar esses elementos. Dominar muito bem os fundamentos dessa duas linguagens deve ser sua prioridade nos estudos de front-end. Para isso, sugiro que domine os seguintes tópicos:
HTML:
- Sintaxe de um documento
- Tags de Blocos:
- Header
- Body
- Div
- Nav
- Footer
- Tags de Texto:
- Heading
- Paragraph
- Botão
- Imagem
- Link
- Input
- Tabelas
- Listas
- Formulários
CSS
- Tamanhos e unidades de medida
- Cores
- Estilizações de textos
- Espaçamentos
- Background
- Bordas
- Posicionamento:
- Absoluto e Relativo
- Flexbox
- Grid
- Formulários
- Eventos
- Manipulação do DOM
- Fetch API
- Media Query
- JSX
- Components
- State
- React Hooks
- Navegação (react-router-dom)
- Estado Global
- Context API
- Redux
- Zustand
- Chamadas de API:
- Axios
- React Query
- useHttp
- SWR
- Graphql - Apollo
- CSS moderno:
- Separação de components com Atomic Design
- Styled Components
- Tailwind
- Emotion
- Chakra UI
- Material UI
- Formulários:
- Yup
- Formik
- React Hook Form
Eslint e Prettier são ferramentas de formatação de código que nos ajudam a previnir erros e também que o código siga um padrão em relação a sua formatação. Recomendo que você os utilize nas suas aplicações.
- Vercel
- Netlify
- AWS S3
Para continuar evoluindo nos seus estudos e na sua jornada de front-end sugiro que estude:
- TypeScript (e aplicação da linguagem no React)
- Next.js (framework de React)
- CI/CD
- Github Actions
- PWA
- Testes:
- Jest
- React Testing Library
- Cypress
- Firebase
- Sentry