TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Tamagui 1.0 – Cross-platform React apps in less time, with better performance

373 pointsby redbar0nover 2 years ago

32 comments

fernandorojoover 2 years ago
I used Tamagui to build a number of screens for a new product we&#x27;re working on, and I saw 90+ lighthouse scores on every page. The fact that I can get that, with SSR support, inline styles, psuedo selectors, typed themes, <i>and</i> that it works on iOS and Android is novel.<p>I built the first library for React Native that supported Web&#x2F;responsive design (Dripsy), so it&#x27;s cool for me to see Tamagui taking this idea to the extreme.
评论 #34189799 未加载
shaneosover 2 years ago
Reading the docs, there seems to be a large amount of magical component creation going on that I find difficult to read. A key benefit of React is the simplicity of a component accepting props and using them in its render function. This library seems to dynamically create a component with a custom configuration language such that it requires a lot of thought to understand what is actually going on. It defines newly available props and their usage differently to other React components, reducing readability considerably.<p>Of course a person can get used to these things, but I question whether it scales to non-tiny teams. There’s a real smell of ye olde dynamic class creation here which React moved away from for very good reasons
评论 #34188891 未加载
yesimahumanover 2 years ago
This looks very interesting. I still question whether teams need this or React Native when they could just bring their existing React web app to mobile with Capacitor. The benefit to that approach is being able to use React web frameworks like Next or Tailwind, without having to use a system specifically designed for native mobile or React Native. Regardless, different solutions work for different teams and this looks like a very interesting project that I need to spend some time with.
评论 #34193946 未加载
评论 #34188673 未加载
评论 #34192189 未加载
评论 #34188164 未加载
fabiospampinatoover 2 years ago
2x performance in what benchmark?<p>React seems less than 2x slower than painfully optimized vanilla code in js-framework-benchmark, even considering the &quot;swap rows&quot; test, which is not that important but where React does terribly in. <a href="https:&#x2F;&#x2F;krausest.github.io&#x2F;js-framework-benchmark&#x2F;current.html" rel="nofollow">https:&#x2F;&#x2F;krausest.github.io&#x2F;js-framework-benchmark&#x2F;current.ht...</a>
评论 #34187304 未加载
yositoover 2 years ago
Tamagui looks cool. I was evaluating it to see if I could use it in my projects. I got stuck on this bit of the documentation:<p>&gt; Button only supports a limited subset of text props directly, and doesn&#x27;t accept hoverStyle text props. If you need more control, you can do a simple customization using some exported helpers.<p>&gt; Please note that this pattern is a bit antithetical to the multiple-components APIs that Tamagui generally prefers. In a future release we hope to fix this, but that change should be easy to migrate to.<p>I don&#x27;t understand what any of that means, but it sounds like Tamagui doesn&#x27;t support hover styles on Button components out of the box. That&#x27;s a huge deal breaker for me. The docs give an example of what they mean by &quot;simple customization&quot;, but the code is completely unintelligible to me, and far from simple.<p>I also haven&#x27;t seen an example of Tamagui being able to render web and native React components from the same code. So it seems to me that either calling it &quot;cross-platform&quot; is a stretch, or the documentation is just very terrible.
评论 #34194700 未加载
mwood23over 2 years ago
I had given up on universal apps before finding tamagui. We’re rebuilding our app experience with this now and seeing the optimizing compiler work is beautiful. Native feels speedy, and the flattened classes it produces for web makes the experience feel first class. SSR friendly to boot.
评论 #34187948 未加载
TobyTheDog123over 2 years ago
As a former JS-head and newly-Flutter&#x2F;Dart-head, this is certainly a step forward for JS frameworks.<p>However, one thing notably absent from the page and a quick Google search are layout animations. React-Native has this in the (poorly-supported and almost-niche) form of LayoutAnimation, however support is notably missing in React-Native-Web and other frameworks attempting to bring true cross-platform support.<p>As for me (not that anyone cares), this is a very cool advancement, but doesn&#x27;t change many of the complaints against the current (and numerous) set of issues with JS, and will be sticking with Flutter.
duxupover 2 years ago
So many things try to sell me on speed. That’s nice but the developer experience and debugging, examples and documentation is what sells me on a thing.
评论 #34193594 未加载
Existenceblinksover 2 years ago
The highlight says it&#x27;s &lt; 17kB but bundlephobia says it&#x27;s 30.1kB<p><pre><code> 92.5 kB Minified 30.1 kB Minified + Gzipped </code></pre> <a href="https:&#x2F;&#x2F;bundlephobia.com&#x2F;package&#x2F;@tamagui&#x2F;core@1.0.1" rel="nofollow">https:&#x2F;&#x2F;bundlephobia.com&#x2F;package&#x2F;@tamagui&#x2F;core@1.0.1</a><p>&gt; Works completely at runtime, no compiler necessary.<p>So is the style part comptime or runtime? Because runtime is definitely undesirable.
评论 #34193803 未加载
Svartoover 2 years ago
Trying to wrap my head around this as a React Native developer, my biggest issue right now is that we developed mobile first and now need to create a web app.<p>Using react-native-web is not as straight forward as it first sounds, as there a lot of packages that don&#x27;t support web and just crash when trying to run the RN app on web.<p>Would this solve that problem, to be able to easily move a React Native mobile app to web?
评论 #34196604 未加载
评论 #34196307 未加载
sokoloffover 2 years ago
Looks interesting. It looks to be under MIT license (great) but the landing page doesn’t mention that. You might as well maximize the benefit of open-sourcing the code by claiming that on the landing page. (It’s true that most anyone actually interested will go look [as I did], so not that big a deal perhaps.)
nsonhaover 2 years ago
Is this the same as using react-native-web, which in turn was implemented with styled-components cross platform?
评论 #34188071 未加载
评论 #34187276 未加载
shadyrover 2 years ago
First time hearing about Tamagui. I literally just set up a new project with Nativewind, but I might try writing a few components using Tamagui as well to compare the two.<p>Keen to hear from anyone else who&#x27;s used both Tamagui and Nativewind as well.
satvikpendemover 2 years ago
Nice site, love the interactivity and color schemes. I&#x27;m going to add it to my list of nice dark mode sites: <a href="https:&#x2F;&#x2F;darkmodes.com" rel="nofollow">https:&#x2F;&#x2F;darkmodes.com</a>
评论 #34189286 未加载
charrondevover 2 years ago
This seems cool, but the performance is absolutely abysmal on the web, at least on my iPhone 13+.<p>There is significant latency when interacting with the components and animations seem to render at ~10fps.
评论 #34194705 未加载
Galanweover 2 years ago
Is size really that much of a problem with React?<p>With some chunk splitting and a good hosting, it has always seemed reasonable to me.<p>The main argument for me when choosing a front end framework is the availability of ready-made UI components, and React has always been ahead thanks to MUI.<p>I&#x27;m just an amateur&#x2F;hobbyist at front end development though, curious what real front end developers care about most in a framework. Especially, isn&#x27;t that a huge pain not to have access to all the wonderful MUI components when leaving react?
评论 #34193273 未加载
eyelidlessnessover 2 years ago
I’m not particularly interested in the cross-platform&#x2F;React aspects of this (although they’re impressive too!). But I’m quite interested in the way it optimizes styles! I hacked something similar together with Fela and an early partial hydration solution, emphasis on <i>hacked</i>. And the DX of my solution is great… until there are a lot of styles, and then builds slow to a crawl. I’m looking forward to giving this a try, and digging into the source to see how it’s done.
评论 #34193178 未加载
2Gkashmiriover 2 years ago
Anyone here develop apps with something like capacitor? Their ionic appflow seems like a closed in ci&#x2F;CD when we could do so in github. Any alternatives? Foss?
评论 #34189919 未加载
jstummbilligover 2 years ago
Sweet. Is there any recommended backend to complement a Tamagui powered application, that gets us closer to the comfort a Rails&#x2F;Laravel app has to offer? Or does Tamagui mostly not care about backend integration, and never will? Offering a NextJS integration seems to hint there is at least some interest in merging both parts.
评论 #34203794 未加载
15155over 2 years ago
When I look at this site, it&#x27;s unobvious what my GUI is going to look like.<p>I don&#x27;t see any screenshots, so I presume it&#x27;s the entire site?
评论 #34187299 未加载
rmoreyover 2 years ago
very interesting! if OP is here, there&#x27;s a typo: <a href="https:&#x2F;&#x2F;tamagui.dev&#x2F;blog&#x2F;version-one#:~:text=.%20Core%20will-,alway,-merges%20styles%20based" rel="nofollow">https:&#x2F;&#x2F;tamagui.dev&#x2F;blog&#x2F;version-one#:~:text=.%20Core%20will...</a>
XiZhaoover 2 years ago
This is the best made component library I’ve seen in a long time, very thoughtfully designed
teg4n_over 2 years ago
Tamagui seems to hype performance but it seems like it’s adds a lot of complexity to optimize web styles which are already very fast. The difference when talking about native (not react-native on web) is tiny IIRC
评论 #34193070 未加载
kritrover 2 years ago
I played around with all the UI components and they’re pretty nice, my only issue is the slider is pretty unresponsive on iOS 16.1 Safari (iPhone 13 Pro).
评论 #34196443 未加载
ecuafloover 2 years ago
I get “ Application error: a client-side exception has occurred (see the browser console for more information).” when viewing the site on iOS Chrome..
评论 #34191564 未加载
cusxover 2 years ago
Hmm, based on the docs I still don&#x27;t know if I can use this for the web only, and if I could, what is the bundle size of this package?
评论 #34193090 未加载
mdanielover 2 years ago
I don&#x27;t know how in the world anyone can claim &quot;2x performance&quot; when clicking on a navigation element, saying out loud &quot;one Mississippi, two Mississippi&quot; and then having the content show up counts as &quot;performance&quot;<p>Want to see something else neat? Open the dev-tools and just <i>wave your cursor</i> over the navigation elements and watch the browser spray GET requests to some json files. I guess they made it Cloudflare&#x27;s problem, but ... I&#x27;m glad I didn&#x27;t try to view this on mobile
评论 #34188747 未加载
scary-sizeover 2 years ago
What’s „native“ here? iOS and Android? Desktop?
评论 #34187514 未加载
评论 #34187434 未加载
评论 #34187397 未加载
cutlerover 2 years ago
And there I was all set to get started with Solito.
评论 #34191356 未加载
评论 #34191283 未加载
brapover 2 years ago
I feel like, in the last few years, we&#x27;re making huge progress towards being able to easily build performant, cross-platform UIs with great dev ergonomics and minimal code, yet we&#x27;re not quite there yet, despite web development existing for decades.<p>Every time I try one of those new shiny things it always looks great at first, but then when &quot;hello world&quot; meets the real world you always hit some wall (be it routing, SSR, styling, state management, data fetching, performance, etc), beyond which things can get pretty messy. I&#x27;ve never seen a real UI codebase that actually looks good.<p>I wish we could finally get there. Maybe WASM will help shake things up a bit.
评论 #34191335 未加载
评论 #34188108 未加载
评论 #34187706 未加载
cyber_kinetistover 2 years ago
The site’s crashing on iOS Safari before loading finishes (client site exception), so I can’t see the contents. The library doesn’t look too good so far…
评论 #34191869 未加载
评论 #34187218 未加载
评论 #34187221 未加载
rjzzleepover 2 years ago
A little off-topic, but having used Raycast a little on a mac, I have to say that I wish there was react-native on Linux. It seems likes the react-native desktop project is maintained by microsoft, so there is no incentive for them to port this to linux, but what would it take to do that? Does anyone know? It seems to hinge on GTK and QT being hard to integrate with.
评论 #34187775 未加载
评论 #34187728 未加载
评论 #34187713 未加载