- SPA ("Single Page App")
- Vite
- React + Typescript
- Tailwindcss + PostCSS (CSS)
- Phosphor Icons (Ícones)
- Headless UI (Acessibilidade)
- html2canvas
- NodeJs. Dependencies:
- typescript
- @types/node
- ts-node-dev
- Express
- Prisma
- SQLite
- Insomnia
- Envio de email pelo Backend
- nodemailer
- mailtrap
- SOLID (mais sobre, abaixo)
- Jest (framework de testes JS)
- SWC
- Cors (segurança do backend)
- React Native
- Expo (mobile)
- Axios
- PostgreSQL
- Vercel
- Railway
S - Single Responsibility Principle
O - Open/Closed Principle
L - Liskov Substitution Principle
I - Interface Segregation Principle
D - Dependency Inversion Principle
Cada classe/função deve ter apenas uma única responsabilidade.
As classes da aplicação devem ser abertas para extensão, mas fechadas para modificação.
Nós devemos poder substituir uma classe pai por uma herança dela e tudo continuar funcionando.
Segregar as interfaces sempre que der.
Uma forma de inverter as dependências da classe/função. Fazer o contexto externo determinar as dependências que nossa classe/função precisa.
No minuto 1:49:10, ele começa o backend da aplicação. Faz a interação do front com o back, e APIs
No minuto 2:00:08, ele faz um recap do que foi visto na aula toda.
No meu celular, quando vou escrever algum feedback, o teclado tampa o Widget todo. Para resolver, basta comentar a linha 92 do index.tsx da pasta Form. Para tirar a opção de multiline.
Para iniciar no terminal, colocar
expo start
Depois, aperta "d" para entrar no localhost. Muda para Tunnel, e lê o QRcode.
Às vezes o expo buga e tem que apertar "r" no terminal para dar um reload.