Gatsby, Hugo, Developer discussed on The React Podcast
So we pull the product data down and build the site, and it's got products, but then the cart, interactions, and the user education that's all handled dynamically at Runtime. So to do that in something like Hugo, you definitely can. But you you're then responsible for building the react app. Injecting that react up into the Hugo templates, and then kind of managing it that way. Whereas with Gatsby the react app is the static site generator. And so that's the primary difference. And it's also one of the reasons that you. Might not need it. If you're just building static sites, and you don't need any of that that dynamism or or just you're not a reactive Ella per like, you may not need it like sometimes it is overkill, but you know, the benefits that you're gonna get are we really focused on keeping that dynamism there. We really focus on performance, and we focus on giving you a really really friendly developer experience. So for Java scrip- developers as far as it in. My obviously biased opinion, the the developer experience. For a Java script developer using Gatsby is going to be superior to any of the other any other statics generators out there. Because either they're not written in Java script or they're they're designed more from lake. Do it yourself perspective. And they're definitely they're exceptions to that. Like react static is really really good. Don't get me wrong. You know, it just when you hit the edges when you hit the edge cases, you hit him pretty hard that that makes sense. I'd never heard it put. Like that. But basically, you can think about this static site as a dynamic site from the beginning like from the very first line of code that. You're right. Exactly. That's awesome. So tell me what are the core technologies that that you interact with when you're building against site. So the the core technologies are going to be react and graph y'all. And then you're you're CSS library of choice. What what you'll never have to think about which is what I think makes gets be wonderful is you don't ever have to set up your Bill process. So things like web pack end. So your web pack set up. Your babble set up your your build process. That's all abstracted away inside a Gatsby for advanced developers. We have escape hatches where you can get to those configuration files and change them. But for for most people, it's not something you need to do you typically won't ever have a reason to go in there and less you're doing something really special. So when you when you make those those changes, you're going to open up a editor like you're gonna use the Gatsby CLI to generate a new site opened up the index page, and edit it, and it'll live update on the internet or on your browser instantly. Like no setup step whatsoever. And yeah, so reacting graph all are going to be your your primary, building blocks. Now had mentioned that the Gatsby store is powered by by Gatsby, and then the checkout the cart process is all namic is that site open source, or do you have an example of how someone might be able to do that? Yeah. The the whole store is open source, and we have a couple examples in our our core repo and the Gatsby repo on get hub. There's an examples folder that has like a simple off example and a dynamic routes examples. So that you can you can see reduced examples how to make that stuff work. But yeah, the the store is probably the canonical example right now of building a really dynamic app. Yeah. This is this is one thing that I'm super excited about just seeing this space of or you have an app that is fully built down into Sadeq assets. But is capable of doing anything that you would do? Do on like a regular database driven the traditional kind of rails or node site. Yeah. This is this is something that like I feel like this is going to be the hill that I die on is that there's there is no such thing as a web app that couldn't be static asset because what I've been finding is that every single website is like itchy Mon CSS and a little bit of Java script that is built from data. And that data is either going to come in through the server. That's also serving your HD mound. CSS Java script or it's going to come from an API. And functionally those are equivalent, it's just an organisational thing..