Тёмный

3 Tips for Scaling React Apps with TailwindCSS 

Rocketseat
Подписаться 364 тыс.
Просмотров 39 тыс.
50% 1

We know that styling is a crucial part of frontend projects. There are many ways to create a beautiful, organized, and visually appealing website.
Diego has been using Tailwind to build his React projects for some time now. With each new experiment of this combination, we have fresh and exclusive content to bring to the channel.
So, if you are also creating React projects using Tailwind, pay attention to these golden tips that Diegão has prepared for you.
Are you ready to code?
Follow Rocketseat on social media:
Twitter: @rocketseat
Facebook: @rocketseat
Instagram: @rocketseat

Опубликовано:

 

28 июн 2024

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 104   
@DanielRodrigues-xu2rq
@DanielRodrigues-xu2rq 11 месяцев назад
qual o tema do vscode?
@rocketseat
@rocketseat 11 месяцев назад
Sabia que essa é a pergunta que o Diegão mais recebe? 😁 por isso mesmo que a gente criou um guia com indicação de temas e configurações dos ambientes dos nossos educadores, e o melhor: totalmente gratuito! Tá disponível aqui: rocketforms.typeform.com/GuiaTerminal 💜
@lucaspires8187
@lucaspires8187 10 месяцев назад
Min Theme
@diogosoares6546
@diogosoares6546 11 месяцев назад
Ja conhecia o CVA, mas esse TailwindVariants é mais abrangente mesmo, e faz ai a continuação mostrando a Slot API, por favor.
@zevdvlpr
@zevdvlpr 11 месяцев назад
Up
@LucasSouza-ev2wb
@LucasSouza-ev2wb 15 дней назад
Cara, achei massa demais esse conteúdo justamente porque eu estava passando por esses problemas quando um componente começava a receber diversas propriedades e vários if/else dentro dele para fazer a estilização, com o tailwind-variants não terei mais esse problema. Valeu Diegão, conteúdo massa! Parabéns Rocketseat por mostrar ferramentas e maneiras mais produtivas de se programar!
@marceloviannadev
@marceloviannadev 10 месяцев назад
Monstro! Mas o que falta é, projeto do zero com next como numa empresa e dia a dia real e nao exemplos mortos sem utilidade. Em um projeto de media escala seguindo toda as boas práticas frontend + design patterns + tema e principalmente em projetos que vão escalar, a cabeça do cara explode e ninguem mostra como é na real! Fica o apelo e quero ver se topam um projeto real, seguindo auto lauout e padroes figma e depois codar tudo com tudo que ha de melhor no mercado e pra melhorar, com redux pra gerenciar o app. Projeto de um site institucional por exemplo com dashboard de user e alterações de estados complexas... enfim... seria animal mostrar realmente como o dia a dia é, a cabeça explode... 😅
@user-ko9cb7qy5s
@user-ko9cb7qy5s 4 месяца назад
Só pagar o curso da rocketseat pae
@marceloviannadev
@marceloviannadev 4 месяца назад
Tenho acesso pela empresa, tudo que está lá dentro não chega perto do que descrevi acima, a crítica fica em vir ao YT mostrar de forma superficial as coisas blz, abraço 🤘 ...@@user-ko9cb7qy5s
@matheusmczvieira
@matheusmczvieira 5 дней назад
No ignite tem exemplos bem mais abrangentes e complexos.
@neliodiassantos
@neliodiassantos 11 месяцев назад
Que show, estava com querendo saber sobre isso hoje hahaha Valeu pelo video!
@EvertJunior
@EvertJunior 11 месяцев назад
Tenho sido um pouco resistente em adotar alguma dessas libs de variants, sinto que isso não é muito "idiomático". São boas soluções, mas pra problemas que voce mesmo está criando. Acho q se seu componente está tão complexo que data atributes não esta sendo suficiente, talvez ele esteja tentado ser coisas demais e podendo receber opiniões demais, nesse momento voce ja perdeu controle do visual dele pela aplicação e qualquer alteração pode quebrar esse componente de várias formas e combinações. Essas libs são feitas pra criadores de bibliotecas estilo MUI/Chakra que por design a API deve receber o máximo de opiniões possível do consumer pra ser versátil o suficiente para vários projetos (notem q elas tem poucas estrelas e são mantidas por pouquíssimas pessoas). Nos projetos que trabalho eu exponho no máximo uma prop "styled" com alguns presets de aparência ou deixo completamente headless pra que seja possível aproveitar só a lógica pra algum uso específico.
@Joanneswsquim
@Joanneswsquim 6 месяцев назад
interessante, tem algum video seu mostrando boas praticas em projetos que se aproxime do real que tende a escalar ? se tiver compartilhe com a gente
@isonhar
@isonhar 11 месяцев назад
Até no "trono" seus vídeos são bem vindos
@zevdvlpr
@zevdvlpr 11 месяцев назад
True
@raphaeljcm
@raphaeljcm 11 месяцев назад
Só dica massa, valeu Diegão!
@AndreOlive
@AndreOlive 11 месяцев назад
Estou adorando usar tailwind, obrigado pelas dicas.
@elioenay
@elioenay 9 месяцев назад
me ajudou demais, você é fera diegão🚀
@tarcisioteixeira9045
@tarcisioteixeira9045 11 месяцев назад
Video massa diegão. Amei a diga da estilização condicional usando um data atribute. Salve
@robertosouzadev
@robertosouzadev 10 месяцев назад
Muito bom Diegão, me ajudou bastante!
@caioribeiro3609
@caioribeiro3609 11 месяцев назад
Shooww, isso é massa d+!
@principe.borodin
@principe.borodin 11 месяцев назад
Dica fantastica, eu tava prourando algo assim para criar um design system.
@sidneydev
@sidneydev 11 месяцев назад
Topíssima a dica do TailwindVariants!!!
@wandersonalwes2428
@wandersonalwes2428 11 месяцев назад
Muito bom!!!
@Oculterous
@Oculterous 11 месяцев назад
Show esse tailwind-variants
@CarlosEduardo42
@CarlosEduardo42 11 месяцев назад
Muito bom, cara... e eu tava organizando isso na mão, utilizando um arquivo Button.modules.css e tipando as variações.
@victorMatttosOw
@victorMatttosOw 11 месяцев назад
Ótimo vídeo mano, parabéns! Diego, onde eu consigo encontrar as extensões de vs code que vc utiliza ?
@Cyroobe
@Cyroobe 5 месяцев назад
Também dá para utilizar a extenção fold para esconder as estilizações
@DelphiPraVida
@DelphiPraVida 4 месяца назад
muito bom mesmo, tu é foda
@Figmafordevs
@Figmafordevs 11 месяцев назад
Muito bom
@HerlonCosta
@HerlonCosta 6 месяцев назад
Cara, que da hora!! Diz ai, qual extensão tu usa pra reordenar as classes do Tailwind?
@mikael.aquino
@mikael.aquino 11 месяцев назад
ótimo video
@luancoelho1983
@luancoelho1983 11 месяцев назад
Diego no curso de Nextjs do Ignite é abordado sobre todas essas boas práticas ensinadas aqui no canal da Rockeseat do YT?
@leandrociric5007
@leandrociric5007 11 месяцев назад
Lá no ignite, tem conteudos mais separados, e o Diego costuma ir um pouco mais a fundo, porém esses conteúdos do que eles estão usando no dia a dia tem mais no youtube, para ir para o Ignite imagino que tenha que estar mais consolidado com a rocketseat. Mas normalmente lá a gente coloca a mão na massa em algum projeto, o que é bem mais prático!! E está para sair um conteúdo só sobre tailwind nos próximos dias! Eu acho que vale super a pena, além deles estarem sempre atualizando!
@markus_dev_cwb
@markus_dev_cwb 11 месяцев назад
@@leandrociric5007 Ótimo porque os Projetos de Next.Js são bem legais, o que estraga é estilizar com Stitches. Graças essa porcaria de Stitches vai ser descontinuado em breve.
@dieegosf
@dieegosf 11 месяцев назад
Fala Luan, aqui no RU-vid acabo trazendo algumas techs beta que não estão no mercado ainda, então nem tudo está no Ignite. No Ignite focamos no que está sólido e te ajudará diretamente no mercado.
@luancoelho1983
@luancoelho1983 11 месяцев назад
@@leandrociric5007 O meu medo de investir um valor significante no curso é de me deparar com um conhecimento que basicamente me ensina o que está escrito na documentação (neste caso eu estudaria por lá) ao invés de falar sobre o que realmente empresas estão usando em seus grandes projetos. Ou seja não ter a sensação que estou só fazendo mais um curso que ensina algo técnico e sim espero aprender boas práticas, padrões de projeto e o todo o fluxo de desenvolvimento por parte da tecnologia do next.
@DigitawGamer
@DigitawGamer 10 месяцев назад
@@luancoelho1983 Opa mano, eu sei que tô respondendo depois de 3 semanas, mas pra mim o diferencial do curso da Rocketseat é justamente que eles ensinam techs bastante utilizadas no mercado e com boas práticas (sem as gambiarras que alguns tutoriais fazem só pra funcionar em vídeo kk), você provavelmente vai usá-las em projetos no seu trabalho. Aconselho fortemente se estiver entre o nível júnior/pleno pois o conteúdo vai te ajudar a se consolidar como pleno, pelo menos foi assim comigo.
@The96tiago
@The96tiago 11 месяцев назад
nesse contexto o class binding do vue faz falta no react
@EvertonMourinho
@EvertonMourinho 11 месяцев назад
top
@luisguilhermeselenko3579
@luisguilhermeselenko3579 11 месяцев назад
Só conhecia o CLS. Essas dicas são ótimas, embora eu considere um pouco chatinhas de entender e implementar. Faz a sequência dos slots aí Diegão!
@vitor666nunber
@vitor666nunber 11 месяцев назад
queria essa sequência dos slots tbm! Aguardando
@3dwand
@3dwand 11 месяцев назад
Eu não sei como a Rocketseat faz isso, mas literalmente o RU-vid fixou esse vídeo no topo do aplicativo. Saí, fechei o app, atualizei o feed várias vezes e o vídeo continuava lá. 😂 Após muita resistência aqui estou vendo o vídeo.
@ribeiro.evandro
@ribeiro.evandro 11 месяцев назад
Essas dicas são sensacionais... Mas infelizmente como trabalho em um projeto com PHP/Laravel usando as Blades do Laravel, não consigo aproveitar o melhor desses mundos... Mas o conteúdo é irado
@leandro40141
@leandro40141 11 месяцев назад
muito massa diegão. Já vou começa a usar
@diogosoares6546
@diogosoares6546 11 месяцев назад
O Shadcn/ui usa o clsx e o cva nos components, é muito top essa lib
@MrFelipefsf
@MrFelipefsf 11 месяцев назад
Gosto de usar o clsx, acho uma mão na roda Cva e tailwind Merge estava estudando usar mais, mas parei pq estamos usando SASS no projeto, agora só tenho que praticar bons nomes paras as classes CSS 😅
@fabiomoraes5597
@fabiomoraes5597 11 месяцев назад
Eu trabalho com Styled Components nos meus projetos há anos e já fiz alguns projetos com Tailwind. O único problema é que parece que o Tailwind é uma abordagem de estilização orientada a 'gambiarras' kkkk.
@diogosoares6546
@diogosoares6546 11 месяцев назад
Onde é que estao essas gambiarras? Pq o CSS classico na sua grande maioria sao classes que por traz tem milhares de regras css que vao aos poucos montando tudo, e o tailwind são utilities class, e o CSS in JS do styled e outros so faz sentido usar se voce usar as props dentro do css pra fazer sentido usar, pq é meio que é pra isso que foi criado, pq a maioria dessas legadas o CSS é compilado no runtime, gerando problema de performance, o tailwind complida zero runtime igual a css tradicional, enfim, sou suspeito de falar, pq sou muito mais produtivo com tailwind, sem falar da facilidade de aplicar responsividade com ele, eu nunca gostei de nenhuma ferramenta CSS in Js mesmo antes do tailwind preferia css tradicioal e css modules, no maximo usava um stitches.
@derciojds
@derciojds 11 месяцев назад
@@diogosoares6546 A nova versão do sass usa dart para compilar o css, a velocidade comparando com o css tradicional é quase que insignificante mesmo em projectos grandes. Então essa coisa de 'zero runtime' é só uma desculpa.
@marceloviannadev
@marceloviannadev 10 месяцев назад
Tailwind é ideal para seguir um padrão estrutural qe conversa perfeitamente com design patterns e auto layout. Usando de qualquer jeito e fora de uma estrutura padronizada, realmente fica horroroso e cheira a gambiarra...
@icaroteles2773
@icaroteles2773 12 дней назад
​@@derciojdsmas Sass é um pré-processador, toda a conversão para CSS é feito em tempo de compilação, então ele é 0 runtime. Esse argumento de não ser 0 runtime é utilizado para bibliotecas CSS-in-JS, que normalmente não são, mas hoje em dia já existem algumas que são, como é o caso da Vanilla Extract
@thiagotaveiros5376
@thiagotaveiros5376 10 месяцев назад
seria bom falar sobre o responsive... estou tentando usar no projeto mas não esta funcionando
@HelenaDuGraus
@HelenaDuGraus 9 месяцев назад
É interessante fazer a parte da responsividade com esse Tailwind variants?
@vladprodan7010
@vladprodan7010 11 месяцев назад
What font do you use in Visual Studio Code?
@MrLOPIU22
@MrLOPIU22 11 месяцев назад
acho que o tailwind merge fez mais sentido pra mim. O tailwind variants parece dar uma volta muito grande pra algo que já fazemos de forma mais fácil, legivel e simples.
@wellyngtonamaral4097
@wellyngtonamaral4097 7 месяцев назад
Resumiu praticamente 95% das libs e frameworks de javascript. Faça a mesma coisa de forma diferente.
@yanderalves1619
@yanderalves1619 2 месяца назад
Última aplicação que fiz, ficou horrível porque eu não tinha mt noção de como fazer componentes cujo estilo dependiam de outras coisas, com o Tailwind Variants vai ficar coisa linda
@velhoonp
@velhoonp 11 месяцев назад
Diego vc pode fazer um video mostrando como configurar path-mapping no vite + react + typescript ja visitei varios tutoriais e nenhum funciona.
@marcelolupatini5553
@marcelolupatini5553 10 месяцев назад
O pacote vite-tsconfig-paths foi o que resolveu esse problema pra mim.
@evandr000
@evandr000 11 месяцев назад
Interessante essas dicas, mas ao invés de usar o TailwindVariants não seria mais simples e organizado construir essas props na tipagem do componente e montar um objeto de tema pra estilizar as props? Aí seria possível acessar todas as props do componente base e ainda manipular especificamente cada uma das que tiver necessidade de valores predefinidos... Sai um pouco da proposta de deixar tudo dentro da declaração do componente, mas dependendo da complexidade dele, acho mais fácil de organizar Oo
@JoaoPaulo-gu7cu
@JoaoPaulo-gu7cu 11 месяцев назад
Cada dia Eles usam alguma coisa diferente, você termina um curso e já está totalmente " desatualizado"
@luizdodibre_
@luizdodibre_ 11 месяцев назад
Qual pacote de icone você usa diego?
@eriiklima
@eriiklima 11 месяцев назад
Diegão do céu, ontem a raiva do Tailwind foi o meu pré treino hahahahahaha! Porque uma lib que me pediram(cliente) para usar parou de funcionar. Ai eu ja ia usar css-in-js e chakra, mas ia refazer o projeto todo porque os estilos quebraram. Esse video salvou o Erik muito obrigado!
@Brenosalv
@Brenosalv 11 месяцев назад
Por que usar o pnpm ao invés dos mais tradicionais npm e yarn?
@dieegosf
@dieegosf 11 месяцев назад
PNPM lida melhor com cache e é mais eficiente em economia de espaço em disco.
@matheusf6540
@matheusf6540 11 месяцев назад
Podia fazer um vídeo ensinando uma forma de ordenar uma tabela no react msm, mas q os dados viessem do banco de dos e conseguisse ordenar a tabela de uma forma q atualizasse no banco de dados. Ex.: como o administrador possa ordenar as categorias de um cardápio online usando o dashboard. Fazer a explicação com prisma e next msm
@Henrique-sg9wm
@Henrique-sg9wm 11 месяцев назад
7:58 alguem sabe a extensão que mostra a mensagem de erro 'className is not defined'
@natanalonso5271
@natanalonso5271 9 месяцев назад
como fez pra criar um componente apenas teclando 'c'??
@kaykjunior5529
@kaykjunior5529 11 месяцев назад
Esse vídeo caiu do céu, tava tendo dificuldades com isso, código muito poluído
@PatrickTimas
@PatrickTimas 11 месяцев назад
Você conhece a biblioteca "shadcn ui"? ele ajuda muito neste aspeto de diminuir a poluição de código.
@annakarolinafranz5946
@annakarolinafranz5946 10 месяцев назад
Cara esse browser que tu usa no Mac qual é???
@ebr182
@ebr182 10 месяцев назад
ouro
@vitvitvitvitvitvitvitvit
@vitvitvitvitvitvitvitvit 11 месяцев назад
Gostei do tw-merge e tw-variants, mas achei a primeira dica pior do que usar condicional. Parece meio indiferente na verdade e quando for declarar váriais classes ocuparia mais espaço, já que precisa usar o prefixo data-[success]
@dieegosf
@dieegosf 11 месяцев назад
É que quando é apenas UMA condicional, fica mais simples mesmo, mas imagina condicionais maiores que são até dependentes entre si, fica uma bagunça!
@vitvitvitvitvitvitvitvit
@vitvitvitvitvitvitvitvit 11 месяцев назад
@@dieegosf Pode serr. Em alguns casos parece ser útil mesmo, conforme a quantidade de estados
@jorgealbmar
@jorgealbmar 11 месяцев назад
No final já podia remover o data-[success] do estilo base, correto?
@dieegosf
@dieegosf 11 месяцев назад
Simmm
@LucasBernardi23
@LucasBernardi23 11 месяцев назад
Diego, meu material icon theme nao tem os mesmos icones de pasta que o seu. Tem algum pack personalizado?
@leandrociric5007
@leandrociric5007 11 месяцев назад
É possível personalizar algumas extensões no settings.json do vscode, para quando for alguma extensão em especifico do arquivo atribuir um icone diferente (como por exemplo os arquivos do nest, que tem a mesma nomenclatura do angular), mas creio que essa lib dele não seja mais o material icon theme (posso estar errado)
@dieegosf
@dieegosf 11 месяцев назад
Esse é o Symbols
@arthur_snow
@arthur_snow 11 месяцев назад
que extensão ou configuração faz com que as classes sejam reorganizadas pra coloca-las em ordem?
@ThiagoBRodrigues
@ThiagoBRodrigues 11 месяцев назад
Eu tbm quero saber o nome dessa extensão.
@tiagoc9754
@tiagoc9754 11 месяцев назад
É um plugin do prettier prettier-plugin-tailwindcss Na documentação oficial fala mais detalhes, mas o RU-vid não deixa eu postar o link
@tiagoc9754
@tiagoc9754 11 месяцев назад
Por que usam tailwind?
@marcelojuniordaluz5877
@marcelojuniordaluz5877 11 месяцев назад
Alguem ja usou o windstitch? Diz que ele tem a mesma proposta mas parece ser mais simples.
@guchierrez
@guchierrez 11 месяцев назад
muito massa essas libs de Tailwind, composição insana uma crítica: tu pronuncia default e success errado e foi chato ficar ouvindo kkkkkkkkkkk
@tiagomaciel2488
@tiagomaciel2488 11 месяцев назад
Ainda não gosto do tailwind para projetos grandes. Simplesmente ele pega acopla tudo em classes e para fazer manipulacao de eventos usando o mesmo como por exemplo ter um componente em que a borda e a cor muda e ele aumenta um pouco de tamanho de acordo com estados que a aplicacao manda já ficaria super "complexo" de ser feito, ainda prefiro abordagem do styled-components e cada componente ter seu próprio style, acho que acaba chegando no mesmo resultado, respeitando o que cada arquivo deveria fazer e manipular.
@brenolins9908
@brenolins9908 11 месяцев назад
Oq vc acha do NativeBase?
@tiagoc9754
@tiagoc9754 11 месяцев назад
O problema do styled components é que (até onde sei) ele não é "SSR-friendly"
@appdevfacil
@appdevfacil 11 месяцев назад
Pessoalmente, eu não consigo gostar dessas aplicações feitas desse jeito com o estilo misturado com o código. curto e acho muito mais bonito fazer tudo separado mesmo.
@angelilton
@angelilton 11 месяцев назад
até entendo quem não é frontend ou é fulllstack no projeto usar tailwind. mas na moral acho isso super bagunçado, se usar styled-componet isso ai fica super facil e agil do mesmo jeito. se não quiser fazer tudo ainda pode meter um material Ui junto e por ai vai
@tiagoc9754
@tiagoc9754 11 месяцев назад
Sobre o styled components, ele tem uma limitação pra quem trabalha com SSR, porque ele é processado no front, então pode acontecer da pagina carregar e o estilo ser aplicado depois (piscar). Não sei se mudaram a arquitetura pra resolver isso. Sobre o restante do comentário, não tenho conhecimento pra comentar
@angelilton
@angelilton 11 месяцев назад
@@tiagoc9754 nunca tivesse esse problema. Sempre usei com nextjs então não sei se é algo que o next já trata
@leandrociric5007
@leandrociric5007 11 месяцев назад
@@angelilton Esse problema acontece mais principalmente agora no app router, onde com o styled components todos os components precisam ser ter o "use client" no começo do arquivo, isso gera um evento de hidratação em todas as páginas, e a gente não consegue tirar proveito do streaming SSR que o next introduziu principalmente nessa ultima versão (13.4), se quiser uma lib que tem a abordagem do styled-components mas sem esse side effect de runtime tem o Linaria, que a abordagem ainda é css in js, mas com zero runtime!!
@tiagoc9754
@tiagoc9754 11 месяцев назад
​@@leandrociric5007obrigado, Leandro. Voltei pra elaborar melhor meu comentário, mas você explicou melhor do que eu
@AlvesGames7
@AlvesGames7 11 месяцев назад
@@leandrociric5007 boa, obrigado!
@markqsantos7613
@markqsantos7613 11 месяцев назад
É melhor fazer direto no arquivo Tailwind, temos que parar de usar tantos frameworks
@marceloviannadev
@marceloviannadev 10 месяцев назад
Foi meu primeiro pensamento. Desnecessário na maioria dos casos. O variants é interessante e util em alguns casos bem específicos. Vendo os vídeos desse maluco, é viciado em library. Over engenniring mandou lembranças. A pressa não leva a perfeição e o projeto vai ficando mais complexo do que deveria ao aumentar a escala do mesmo.
@BillRocha
@BillRocha 11 месяцев назад
Tailwind não é profissional!
@bbarreto18
@bbarreto18 11 месяцев назад
Bem organizado é sim
@heraldo623
@heraldo623 5 месяцев назад
Tailwind não é legível
Далее
10 Tailwind Tricks You NEED To Know!
10:45
Просмотров 272 тыс.
Barry Policeman And His Son Vs Prisoners
00:26
Просмотров 2 млн
Reviewing your React Code: Episode #3
14:27
Просмотров 5 тыс.
How To Maximize Performance In Your React Apps
12:58
Просмотров 93 тыс.
cn() - Every Tailwind Coder Needs It (clsx + twMerge)
7:46