Live data from Hacker News

An Honest Review of Gatsby

cra.mr

51–60 of 120 posts

Re: An Honest Review of Gatsby

#51
When I found gatsby, I immediately stripped everything out and hooked into the dynamic createPages so I could just give it a list of components to turn into pages. (I thought the graphQL parts were horribly bloated boilerplate, so I didn’t want to even touch it.)

It also works well with async import for runtime loading of components.

Other then that, I don’t use any of it’s features. (I found a markdown react on npm and manually move the images to the public folder and use normal image tags.)

I’m quite happy with the runtime results, and develop re-render works pretty quickly. However, the production build takes about 30 secs which is pretty slow and I also ran into “out of heap memory“ on node during build and had to increase node’s heap size.

So I’m sure I’ll end up needing to build my own SSR eventually, but it should be easy to do.

Re: An Honest Review of Gatsby

#53

Earlier quoted context omitted.

What was the actual issue it did not compile and what was resolve?

If I remember correctly, Hugo wasn't able to process the template-content combination when I tried starting it after a few months of not using it (Hugo had been updated meanwhile). So I updated the template which didn't solve the issue. Then I tried to find out what changed and it wasn't just a few lines of code, but more fundamental things. In the end, I just took a completely fresh version of the template and rebui…

You could have just used the same Hugo version as initially.

It's a moving project and yeah, there have been a lot of changes, with some breaking ones (usually for good reason).

Re: An Honest Review of Gatsby

#54
Not mentioned here, and rarely mentioned anywhere is marko.js as a good alternative. Its not static site generation, but it's faster than most static site generated even though it processes templates on the server. The markup does not even need to learn: its pure JavaScript in the markup, it makes it so intuitive to create templates.

Re: An Honest Review of Gatsby

#55

When I found gatsby, I immediately stripped everything out and hooked into the dynamic createPages so I could just give it a list of components to turn into pages. (I thought the graphQL parts were horribly bloated boilerplate, so I didn’t want to even touch it.) It also works well with async import for runtime loading of components. Other then that, I don’t use any of it’s features. (I found a markdown react on npm…

Gatsby's one saving grace feature is the createPages API - it lets you programatically create pages at a specific URL with a specific template (React component), with context passed to the template that's not present in the URL. The benefit of this is you're able to render multiple difficult templates at the same URL pattern.

Gatsby does, however, suffer from huge scale problems, I think mostly due to the data type inference it needs for GraphQL. Once you start ramping up the number of models and records, it will churn forever ingesting them. There are hacks and ways to particially mitigate some of this, but still Gatsby continues to have problems once you're working with a medium amount of content.

Re: An Honest Review of Gatsby

#56
For those of us not familiar with these systems - can someone please link to something more introductory?

I literally thought this was an item about the Australian stand-up comic (but that's Gadsby with a D).

Re: An Honest Review of Gatsby

#57

I wonder why it seems nobody wants to use Hugo. Smashing Magazine appears to be happy with it and they tooted about their experience with Hugo multiple times. Instead, everyone chooses Gatsby, Next or another javascript based framework of this week.

Plenty of people use the "older" options. People just write more about the new stuff - and depending on where you look the audience skews.

Re: An Honest Review of Gatsby

#58

The first complaint in this is review is that markdown isn't rendered in custom MDX components, using this example: ``` PUT/DELETE methods only apply to updating/deleting issues. Events in sentry are immutable and can only be deleted by deleting the whole issue. ``` And goes on to shiw their ugly hack to make it work. Well, markdown in custom MDX components is rendered. You only need to leave a line break to signal t…

> Which I really don't find to be a deal breaker.

If my content requires two extra line breaks that do not serve any purpose beyond dealing with the vagarities of the generator (where there is absolutely no reason it should work that way), that does not bode well for my further experiences.

Re: An Honest Review of Gatsby

#59

I wonder why it seems nobody wants to use Hugo. Smashing Magazine appears to be happy with it and they tooted about their experience with Hugo multiple times. Instead, everyone chooses Gatsby, Next or another javascript based framework of this week.

I use two pieces of backend software: Django and Hugo. Django is hugely more complex and I have considerably more experience with Hugo... And yet I run into far fewer problems and get stuff done faster with Django.

Hugo has exactly one thing going for it compared to other static site builders: it's fast. I have about 100 pages now and they build in Aside from that, it's a pain to work with. The documentation is sparse but serviceable, but the community on GitHub and Discourse leaves a lot to be desired. Grumpy and unresponsive and much more inclined to close your issue or tersely tell you to read the docs than provide help or admit you have a valid feature request/bug report.

Re: An Honest Review of Gatsby

#60
post #48

Using gatsby is the worst choice I ever made, the build times are infuriatingly slow and GraphQL really is not a good fit for it. The amount of time that you have to spend just fiddling with Gatsby is insane and then in the end it only barely works. Their marketing keeps touting fast but I doubt there is something slower when you actually use it for something of consequence.

[deleted]
Post reply on HN