react-brasil / forum

:beer: Portando discussões feitas em grupos (Facebook, Google Groups, Slack, Disqus) pra issues
MIT License
30 stars 0 forks source link

Componentes Cross-Platform #1

Open lucasalmeida92 opened 5 years ago

lucasalmeida92 commented 5 years ago

Alguém já teve experiência com ou estudou sobre reutilizar componentes react tanto para web quanto para Native :interrobang:

Discussão que começou numa thread do Slack: https://react-brasil.slack.com/archives/C2FML7RQX/p1536703929000100

No meu caso, não estou interessado em fazer uma mesma app que eu consiga buildar para diferentes plataformas(web, mobile, desktop, vr, etc..), MAS sim uma lib de componentes para que projetos de diferentes plataformas possam importá-lo e assim manter uma consistência visual(obedecendo um designsystem por ex..).

lucasalmeida92 commented 5 years ago

Principais tecnologias que encontrei até então:

  1. React Native for Web (https://github.com/necolas/react-native-web)
  2. ReactXP (https://microsoft.github.io/reactxp)
  3. React Primitives (https://github.com/lelandrichardson/react-primitives)
  4. React Native DOM (https://github.com/vincentriemer/react-native-dom)
nicholasess commented 5 years ago

@lucasalmeida92 temos a experiencia com React Native Web no Docz.

As limitações dele está na questão de renderizar módulos, então o que não for JS, não rola.

lucasalmeida92 commented 5 years ago

Hmmmm! Não sei se entendi direito @nicholasess, poderia dar algum exemplo ?

lucasalmeida92 commented 5 years ago

Artigo bacana de um caso onde optaram por ReactXP https://www.monterail.com/blog/react-native-reactxp

nicholasess commented 5 years ago

Lucas, câmera, geolocation e outros módulos não rolam.

Só view, scroll e etc

lucasalmeida92 commented 5 years ago

Aaa sim! tudo que é pra interface com periféricos no caso? Pra mim no caso acho que resolve, pois só utilizaria a lib pra parte de componentes visuais mesmo.

Aproveitando sua experiencia com RNW, você acha que eu poderia ter alguma limitação ?

nicholasess commented 5 years ago

@lucasalmeida92 é melhor você fazer uma POC, cada projeto tem sua particularidade

nic commented 5 years ago

Este é o melhor projeto full opensource que conheço que desenvolveu uma solução Cross-Platform: https://github.com/keybase/client

Dá uma lida nos fontes.