Skip to content

Conjunto de trabalhos desenvolvidos ao longo do curso de desenvolvimento web da Trybe

Notifications You must be signed in to change notification settings

willian-prado/trybe-records

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

51 Commits
 
 
 
 

Repository files navigation

Boas-vindas ao repositório Trybe Records

Este é um histórico de todos os projetos realizados ao longo do curso da Trybe, além de uma breve descrição do que foi estudado em cada um dos blocos.


Acesso rápido aos projetos

Bloco Projeto Principais Tecnologias
Bloco 1 - Unix & Bash
Bloco 2 - Git, GitHub e Internet
Bloco 3 - Introdução à HTML e CSS Lessons Learned html5 css3
Bloco 4 - Introdução à JavaScript e Lógica de Programação Playground Functions javascript
Bloco 5 - JavaScript: DOM, Eventos e Web Storage Pixels Art javascript html5 css3
Bloco 5 - JavaScript: DOM, Eventos e Web Storage Todo List javascript html5 css3
Bloco 6 - HTML e CSS: Forms, Flexbox e Responsivo Trybewarts javascript html5 css3
Bloco 7 - Introdução à JavaScript ES6 e Testes Unitários Js Unit Tests javascript nodejs
Bloco 8 - Higher Order Functions do JavaScript ES6 Zoo Functions javascript
Bloco 9 - JavaScript e Testes Assíncronos Shopping Cart javascript html5 css3
Bloco 9 - JavaScript e Testes Assíncronos Jest javascript nodejs jest
Bloco 10 - Introdução à React Movie Cards Library react
Bloco 11 - Componentes com Estado, Eventos e Formulários com React Movie Cards Library Stateful react
Bloco 12 - Ciclo de Vida de Componentes e React Router Movie Cards Library CRUD react react router
Bloco 13 - Metodologias Ágeis Frontend Online Store react react router trello
Bloco 14 - Testes automatizados com React Testing Library React Testing Library react react router react testing library jest
Bloco 15 - Gerenciamento de estado com Redux Trybewallet react react router redux
Bloco 16 - Projeto Jogo de Trivia Trivia react react router redux trello
Bloco 17 - Context API e React Hooks Star Wars Planets Search react
Bloco 18 - Projeto App de Receitas Recipes App react react router react testing library jest trello
Bloco 19 - Introdução à SQL All For One mysql
Bloco 20 - Funções SQL, JOINs e Normalização Vocabulary Booster mysql
Bloco 21 - Normalização e Modelagem de Banco de Dados One For All mysql
Bloco 22 - Introdução ao MongoDB Dataflights mongodb
Bloco 23 - MongoDB: Updates Simples e Complexos Commerce mongodb
Bloco 24 - MongoDB: Aggregation Framework Aggregations mongodb
Bloco 25 - Introdução ao desenvolvimento Web com Node.js Talker Manager nodejs express
Bloco 26 - Node.js: Camada de Serviço e Arquitetura Rest e Restful Store Manager mongodb nodejs express
Bloco 27 - Autenticação e Upload de Arquivos Cookmaster mongodb nodejs express jwt
Bloco 28 - Deployment Stranger Things nodejs express react heroku
Bloco 29 - Arquitetura: SOLID e ORM Blogs API mysql sequelize nodejs express jwt
Bloco 30 - Sockets Webchat mongodb nodejs express socket.io
Bloco 31 - Projeto - App de Delivery Delivery App mysql sequelize react redux nodejs express trello
Bloco 32 - Introdução à Python Job Insights python
Bloco 33 - Programação Orientada a Objetos e Padrões de Projeto Inventory Reports python
Bloco 34 - Redes e Raspagem de Dados Tech News python
Bloco 35 - Algoritmos Algorithms python
Bloco 36 - Estrutura de Dados I: Arrays, Hashmaps e Sets Restaurant Orders python
Bloco 37 - Estrutura de Dados II: Listas, Filas e Pilhas Trybe Is Not Google python

Introdução

O curso da Trybe foi criado para quem deseja seguir uma carreira em tecnologia e conta com mais de 1.500 horas de conteúdos síncronos (aulas e dinâmicas ao vivo) e assíncronos (vídeos gravados e textos disponíveis na plataforma). Ele aborda introdução ao desenvolvimento de software, front-end, back-end, ciência da computação, engenharia de software, metodologias ágeis e habilidades comportamentais. Ao longo da formação são estudadas várias tecnologias, como JavaScript, HTML, CSS, React, Redux, Node, Express.js, SQL, Git, entre outras linguagens e frameworks.


Período de duração

  • Início: 06/04/2021
  • Conclusão: 06/04/2022

Formação

O conteúdo de Hard skills é dividido em quatro módulos: Fundamentos do Desenvolvimento Web, Desenvolvimento Front-end, Desenvolvimento Back-end e Ciência da Computação.

1 - Fundamentos do Desenvolvimento Web

Bloco 1 - Unix & Bash

Introdução ao sistema operacional Unix e comandos básicos Bash utilizando o terminal. Entre os comandos aprendidos temos: ls, less, cp, mv, head, tail, rm, pwd, grep, etc.

Bloco 2 - Git, GitHub e Internet

Introdução ao Git e GitHub, sistemas de controle de versionamento de código local e remoto, respectivamente. Nesse bloco aprendemos a criar nosso primeiro repositório Git e também a subí-lo ao GitHub. Além disso, conhecemos um pouco sobre o modelo cliente - servidor e requisições HTTP.

Bloco 3 - Introdução à HTML e CSS

Estudamos as principais tags HTML, como usar CSS para estilização e a importância de HTML semântico para acessibilidade de uma página.

Projeto individual: Lessons Learned - Tecnologias: html5 css3

Bloco 4 - Introdução à JavaScript e Lógica de Programação

Primeiro contato com JavaScript, aprendemos sobre variáveis, constantes, tipos primitivos, tipagem dinâmica, operadores aritméticos, operadores de atribuição, operadores lógicos, estruturas condicionais, lógica de programação, estruturas de repetição e mais.

Projeto individual: Playground Functions - Tecnologias: javascript

Bloco 5 - JavaScript: DOM, Eventos e Web Storage

Introdução ao DOM (Document Object Model) e como manipular sua estrutura utilizando seletores e código JavaScript. Aprendemos ainda a criar eventos que permitem a interação do usuário com a página e a usar o Web Storage para salvar dados das pessoas nos browsers.

Projeto individual: Pixels Art - Tecnologias: html5 css3 javascript

Projeto individual: Todo List - Tecnologias: html5 css3 javascript

Bloco 6 - HTML e CSS: Forms, Flexbox e Responsivo

Construção de formulários HTML, uso de bibliotecas JavaScript e CSS, introdução ao modelo Flexbox de estilização e criação páginas responsivas e abordagem mobile-first.

Projeto em dupla: Trybewarts - Tecnologias: html5 css3 javascript

Bloco 7 - Introdução à JavaScript ES6 e Testes Unitários

Estudamos sobre as features introduzidas na versão ES6 do JavaScript, como let, const, arrow functions, template literals, operador ternário. Além disso, aprendemos métodos de manipulação de objetos e construção dos primeiros testes automatizados usando o módulo Assert.

Projeto individual: Js Unit Tests - Tecnologias: javascript nodejs

Bloco 8 - Higher Order Functions do JavaScript ES6

Conceitos de first-class function e higher order function, métodos de manipulação de arrays, tais como forEach, map, filter, reduce, every, sort, find, entre outras.

Projeto individual: Zoo Functions - Tecnologias: javascript

Bloco 9 - JavaScript e Testes Assíncronos

Praticamos a construção de código assíncrono, usando callbacks e promises. Além disso, aprendemos sobre testes automatizados com a biblioteca Jest, usando Jest assíncrono e Mocks aplicados a testes em Javascript.

Projeto individual: Shopping Cart - Tecnologias: html5 css3 javascript

Projeto individual: Jest - Tecnologias: javascript nodejs jest

2 - Desenvolvimento Front-end

Bloco 10 - Introdução à React

Introdução à biblioteca React, uma das mais usadas para criação de interfaces web. Aqui somos apresentados aos conceitos de componentes, props e prop-types.

Projeto individual: Movie Cards Library - Tecnologias: html5 css3 javascript react

Bloco 11 - Componentes com Estado, Eventos e Formulários com React

Utilização de estado de componentes, captura de eventos usando a sintaxe do React e construção de formulários usando JSX.

Projeto individual: Movie Cards Library Stateful - Tecnologias: html5 css3 javascript react

Bloco 12 - Ciclo de Vida de Componentes e React Router

Conceitos de ciclo de vida de componentes e roteamento de páginas usando a biblioteca React Router.

Projeto individual: Movie Cards Library CRUD - Tecnologias: html5 css3 javascript react react router

Bloco 13 - Metodologias Ágeis

Introdução aos métodos ágeis, que incentivam, entre outras coisas, o desenvolvimento de projetos por meio de comunicação frequente, entregas incrementais, foco no cliente e trabalho em equipe.

Projeto em grupo: Frontend Online Store - Tecnologias: html5 css3 javascript react react router trello

Bloco 14 - Testes automatizados com React Testing Library

Construção de testes automatizados com RTL (React Testing Library), a biblioteca de testes recomendada pela documentação oficial do React.

Projeto individual: React Testing Library - Tecnologias: html5 css3 javascript react react router react testing library jest

Bloco 15 - Gerenciamento de estado com Redux

Introdução ao Redux, uma biblioteca de gerenciamento do estado global de ampla adoção entre as pessoas que desenvolvem em React.

Projeto individual: Trybewallet - Tecnologias: html5 css3 javascript react react router redux

Bloco 16 - Projeto Jogo de Trivia

Prática de metodologias ágeis, soft skills e React-Redux.

Projeto em grupo: Trivia - Tecnologias: html5 css3 javascript react react router redux trello

Bloco 17 - Context API e React Hooks

Introdução a funcionalidades mais avançadas em React, como: Context API, para gerenciamento do estado global da aplicação; e React Hooks, que permite a utilização de componentes funcionais com estado e outras funcionalidades.

Projeto individual: Star Wars Planets Search - Tecnologias: html5 css3 javascript react

Bloco 18 - Projeto App de Receitas

Prática de metodologias ágeis, soft skills, React Hooks, Context API e testes unitários.

Projeto em grupo: Recipes App - Tecnologias: html5 css3 javascript react react router react testing library jest trello

3 - Desenvolvimento Back-end

Bloco 19 - Introdução à SQL

Introdução aos bancos de dados relacionais, utilizando MySQL e MySQL Workbench de forma prática. Uso de comandos básicos, como SELECT, WHERE, ORDER BY, INSERT, UPDATE, DELETE.

Projeto individual: All For One - Tecnologias: mysql

Bloco 20 - Funções SQL, JOINs e Normalização

Aprendemos sobre a utilização de funções para manipulação de dados SQL, como funções para manipulação de strings, estruturas condicionais e funções matemáticas. Além disso, vimos como unir informações presentes em mais de uma tabela por meios dos vários JOINs e a criar nossas próprias funções.

Projeto individual: Vocabulary Booster - Tecnologias: mysql

Bloco 21 - Normalização e Modelagem de Banco de Dados

Praticamos a construção de um banco de dados a partir de ideias ou problemas a serem resolvidos. Passamos pela identificação de entidades, relacionamentos, construção de diagramas ER (entidade-relacionamento) e uso de tabelas normalizadas.

Projeto individual: One For All - Tecnologias: mysql

Bloco 22 - Introdução ao MongoDB

Conceitos sobre bancos de dados NoSQL, incluindo os diferentes tipos de classes de bancos existentes. Introdução ao MongoDB, um banco NoSQL da classe Documentos, incluindo instalação, conexão e execução de comandos básicos de leitura/escrita. Alguns dos métodos vistos foram find(), insertOne(), insertMany(), deleteOne(), deleteMany() e operadores de comparação e lógicos (usados em conjunto do find()).

Projeto individual: Dataflights - Tecnologias: mongodb

Bloco 23 - MongoDB: Updates Simples e Complexos

Utilização dos métodos updateOne() e updateMany() junto de operadores (por exemplo, $set, $mul e $inc) para updates simples em documentos MongoDB. Além disso, prática de updates complexos, alterando informações presentes em arrays.

Projeto individual: Commerce - Tecnologias: mongodb

Bloco 24 - MongoDB: Aggregation Framework

Introdução ao Aggregation Framework, conjunto de ferramentas modelado sob o conceito de processamento de dados por meio de pipelines. Ele permite operações de agregação que podem agrupar dados de múltiplos documentos ou coleções, executar operações nesses dados e, finalmente, retornar um único resultado.

Projeto individual: Aggregations - Tecnologias: mongodb

Bloco 25 - Introdução ao desenvolvimento Web com Node.js

Introdução aoNodeJS e NPM, leitura e escrita de arquivos com o módulo fs de forma síncrona e assíncrona e construção de testes para NodeJS usando Mocha, Chai e Sinon. Além disso, damos os primeiros passos com um dos frameworks mais utilizados para construção de APIs em NodeJS, o Express.

Projeto individual: Talker Manager - Tecnologias: javascript nodejs express

Bloco 26 - Node.js: Camada de Serviço e Arquitetura Rest e Restful

Organização de uma aplicação Node e Express em camadas de responsabilidades, usando a arquitetura MSC (Model, Service e Controller) e dentro do padrão REST. Fizemos a construção de APIs RESTful, usando conexão com banco de dados MongoDB ou MySQL, validação de requisições, estruturação de regras de negócio, tratamento de possíveis erros e mais.

Projeto individual: Store Manager - Tecnologias: mongodb javascript nodejs express

Bloco 27 - Autenticação e Upload de Arquivos

Construção de APIs Restful contendo middlewares de autenticação JWT e de upload de arquivos com multer. Criação de testes de integração com Mocha, Chai e Sinon.

Projeto individual: Cookmaster - Tecnologias: mongodb javascript nodejs express jwt

Bloco 28 - Deployment

Configuração do deploy de uma aplicação Node e React pelo Heroku e gerenciamento processos usando PM2.

Projeto individual: Stranger Things - Tecnologias: javascript nodejs express react heroku

Bloco 29 - Arquitetura: SOLID e ORM

Noções sobre os cinco princípios SOLID, série de normas e padrões para construir um código mais organizado, otimizando manutenção, legibilidade e testabilidade. Ainda, introdução ao ORM (Object Relational Mapping) Sequelize. Os ORMs permitem criar e alterar tabelas, fazer consultas, inserir e extrair dados do seu banco de dados através de código JavaScript. O Sequelize é um ORM do tipo Active Record que permite a utilização de diferentes tipos de bancos de dados, incluindo MySQL, PostgreSQL, MariaDB e SQLServer.

Projeto individual: Blogs API - Tecnologias: mysql sequelize javascript nodejs express jwt

Bloco 30 - Sockets

Apresentação do padrão arquitetural MVC (Model, View e Controller) utilizando EJS (Embedded JavaScript) como template engine e ao pacote Socket.io - uma ferramenta usada para criar aplicações em tempo-real, como aplicativos de mensagens instantâneas, streaming e colaboração em documentos.

Projeto individual: Webchat - Tecnologias: mongodb javascript nodejs express socket.io

Bloco 31 - Projeto - App de Delivery

Prática de metodologias ágeis, soft skills, React, Redux, Node, Express, MySQL, Sequelize e comunicação entre o back-end e front-end de uma aplicação.

Projeto em grupo: Delivery App - Tecnologias: mysql sequelize html5 css3 javascript react redux nodejs express jwt trello

4 - Ciência da Computação

Bloco 32 - Introdução à Python

Introdução à linguagem de programação Python, desde a sua instalação, configuração do ambiente de desenvolvimento, sintaxe, diferentes tipos de variáveis, métodos e principais funções.

Projeto individual: Job Insights - Tecnologias: python

Bloco 33 - Programação Orientada a Objetos e Padrões de Projeto

Revisão sobre princípios SOLID e primeiro contato com a abordagem POO (Programação Orientada a Objetos) e seus quatro pilares: abstração, encapsulamento, herança e polimorfismo. Introdução a conceitos, como classe, instância, métodos abstratos, métodos de classe, métodos estáticos, interface e mais.

Projeto em dupla: Inventory Reports - Tecnologias: python

Bloco 34 - Redes e Raspagem de Dados

Estudamos superficialmente alguns tópicos de arquitetura de redes e aprendemos técnicas para realizar a raspagem de dados com Python, utilizando as bibliotecas requests e parsel.

Projeto individual: Tech News - Tecnologias: python

Bloco 35 - Algoritmos

Introdução ao estudo de complexidade de tempo e espaço em algorítmos, incluindo noções básicas para identificar as complexidades constante, linear, quadrática, logaritmica, exponencial e fatorial. Aprendemos também sobre recursividade e algoritmos de ordenação.

Projeto individual: Algorithms - Tecnologias: python

Bloco 36 - Estrutura de Dados I: Arrays, Hashmaps e Sets

Começamos estudando as bases que permitem o funcionamento dos vários componentes que formam o computador. Depois, partimos para o estudo de várias estruturas de dados, incluindo arrays, hashmaps e sets.

Projeto individual: Restaurant Orders - Tecnologias: python

Bloco 37 - Estrutura de Dados II: Listas, Filas e Pilhas

Finalizamos o estudo de estrutura de dados, trabalhando com nós, linked lists, double-linked lists, filas e pilhas.

Projeto individual: Trybe Is Not Google - Tecnologias: python


Certificados

Módulo Fundamentos do Desenvolvimento Web

Módulo Desenvolvimento Front-end

Módulo Desenvolvimento Back-end


Contato

About

Conjunto de trabalhos desenvolvidos ao longo do curso de desenvolvimento web da Trybe

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published