Este repositório contém guias, aulas e resumos sobre os principais conceitos utilizados no projeto da plataforma, ele serve de base para o aprendizado e revisão de informações fundamentais para o melhor uso das ferramentas.
Sendo utilizada stack muito focada no ecosistema JavaScript/TypeScript nesse projeto, o repositório contém desde conceitos de base como tipos primitivos de linguagem, tipos de variáveis, promises e objetos até guias de como utilizar bibliotecas muito úteis do ecosistema da melhor forma.
- Tipos primitivos do JavaScript
- Escopo das variáveis
- Diferença entre const, var e let
- Promises
- Uso do async e await
- Error handling correto do JavaScript
- Funções map, filter e reduce
- Operador spread
- IIFE
- Callbacks, closures e currying de funções
- Memoização de funções
- Uso das features do TypeScript
- Interfaces e tipos do TypeScript (quando e para o que usar)
- React por baixo dos panos (Ciclo de vida dos componentes, refresh, hooks etc...)
- Mutações e queries através do React Query com TypeScript e tRPC
- Parâmetros de rota, navegação de páginas e o FSR do React Router
- Criação de rotas utilizando o tRPC com schema de validação (Zod) e autenticação por meio de contextos
- Criação de modelos e entidades relacionadas no Prisma
- Mutações e queries no banco de dados com o Prisma
- Componentização e extração de tokens de design usando Tailwind CSS e components primitivos (Radix UI ou Headless UI)
Contribuições são o que fazem a comunidade open source um lugar perfeito para o aprendizado, inspiração e criação. Qualquer contribuição que você fazer é muito apreciada.
Se você tiver alguma sugestão que pode melhorar, por favor dê fork nesse repositório e crie uma pull request. Você também pode abrir uma issue com a tag "Melhoria". Não se esqueça de dar ao repositório uma estrela! Obrigado novamente.
- Dê fork no projeto
- Crie sua branch de melhoria (
git checkout -b feature/AmazingFeature
) - Faça commit suas mudanças (
git commit -m 'Add some AmazingFeature'
) - Dê push para a branch (
git push origin feature/AmazingFeature
) - Abra uma pull request