8 ms·
Let’s celebrate Hugo’s 5th birthday
- ttul 8y agoBack in the day, before WordPress sadly became dominant, I made my own static site builder with Perl and Make. Yes, feel free to point and laugh. But it was awesome. It’s nice to see static site builders like Hugo gaining momentum. With so much going on on the client these days, having a static back end is a great idea (again).
- tonyarkles 8y ago> Yes, feel free to point and laugh Why would we do that? Text manipulation (translating from a simple markup format into HTML) is Perl's bread and butter! And make is pretty easy to set up to have new general-purpose rules (e.g. .md -> .html).
- tiernano 8y agoThis sounds like what Movable Type was way back... i used it around the year 2000/2001, and it worked great... then the dark days of Wordpress came along, and ugh... Its only in the last year or so that i moved back to static sites, and just last week moved my site to Hugo. very happy with it so far too!
- clairity 8y agoback in the day, a friend of mine also made a perl-based static site generator for her blog, and i totally made fun of her for it, because, who would want a static site?!?! and perl?? ugh. i thought my (dynamic) blog custom-built in php was the bee's knees because i could have comments and my own admin interface. how silly i was. =) particularly with the advance of front-end development (and automatable deployment pipelines), static generation makes so much more sense now.
- cutler 8y agoIf Perl why not Template::Toolkit? I still use it after 15 years. What I like about it is that it gets out of your way and doesn't assume your site is a blog. It just converts template files to corresponding HTML files and that's it.
- overcast 8y agoAnytime I work on a new web project, the first question I ask is how can I make this completely static. Hugo is my first choice to make it happen. It's REALLY nice not worrying about databases / programming environments / user accounts.
- thieving_magpie 8y agoMaybe this isn't the correct place to ask a question like this but how do you avoid interacting with a database or user accounts? Is it at simple as you don't have any of that in your application?
- overcast 8y agoMostly that. If you take out all of the "social" aspects of most modern websites. Then they really don't require backend databases and accounts. I've been moving back to more of a minimalist/purist approach.
- terminalcommand 8y agoStatic sites are great for simplicity, but IMO we should be striving for more interaction not less. If I open a blog I want to be able to host comments and not rely on email or third party services. Maybe we need a hybrid site generator. We could still write the content as seperate text files, but we would have the ability to integrate comment sections, user profiles etc. seemlessly. Our posts could be parsed and recorded onto a database, for better indexing, search, analytics and reducing redundancies. The generator would come with a web server and handle everything we throw at it. From ssl to comments to databases. That's the future I dream of. Not full blown CMSs, but not web 1.0 either.
- overcast 8y agoSounds great, but comments are the first thing I'd prefer just disappear from the internet. I understand that is what brings users, but they are generally cess pools of assholes and spammers.
- infiniteseeker 8y agoCan anyone recommend a good blog theme? Themes.gohugo.io does not seem to have anything super appealing to me
- corobo 8y agoThey've got a huge range of themes on there - you'll have to be more specific about your tastes There's also the option to create your own https://gohugo.io/themes/creating/ https://gohugo.io/themes/creating/
- bovermyer 8y agoYour request is akin to giving a developer the requirement to "make the thing" and expecting a fully-formed application that does exactly what you were thinking at scale. You may wish to specify your exact requirements.
- mark212 8y agowith a bit of CSS study and some experimentation, all of the themes can be turned into something appealing. Start with one that's close to what you like and dig in.
- mcjiggerlog 8y agoIf you have any experience with web development, it's actually very trivial to create your own. I had absolutely no trouble putting together something simple for https://tomjwatson.com/ https://tomjwatson.com/. The code is available here - https://github.com/tom-james-watson/tomjwatson.com https://github.com/tom-james-watson/tomjwatson.com
- fishbone 8y agoI used the acedemic theme on mine > https://www.30platforms.com https://www.30platforms.com I’ve been pretty happy with Hugo so far.
- kowdermeister 8y agoI wanted to use this before going back to Gatsby: https://themes.gohugo.io/minimo/ https://themes.gohugo.io/minimo/
- penglish1 8y agoHugo is nifty. It is in Golang. It is wicked fast. But. Like most of the static site generators out there, it is so hyper-focussed on some aspects that it stumbles or completely misses others. I believe that Hugo (and others) take Markdown in precisely their expected format, and layout, with their format of header and, with precisely the correct version of config file and template.. turn it into some really nice looking HTML. Fast. I guess - even after 5 years they aren't attempting to call it 1.0 at least. Maybe the other things will get fixed before then. You might even be able to take your existing Markdown stuff and convert it - but be prepared to fiddle with Markdown syntax a bit, and headers, and file layout, etc.. potentially for hours. And hours and hours. And hours and hours. Not so fast any more, is it? Hugo is not alone here. The number of themes available is amazing! And they look fantastic! But - you're going to have to spend many more hours digging to find one that puts the blog on a separate page, instead of front and center.. because 80%+ of them are oriented towards blogs only. Now.. a week later... new minor release time. Does the new release work with your existing config? With your existing theme? Oops - you waited a month and missed a few minor releases.. will everything break now? How do you ensure that your theme keeps up to date with your release? Git hooks, git submodules? What fun! How.. fast? Not if you're futzing with all this stuff. Hugo isn't alone here - Jekyll, Pelican to name two I've tried also have problems to a greater or lesser degree.
- esolyt 8y agoJekyll has gotten pretty fast too, especially if you enable incremental building.
- 2bitencryption 8y agoI've tried Jekyll on multiple occasions and have always been put off by just how huge the tool is. I just want to turn my markdown into pretty HTML. That's all. Jekyll feels like this giant sledgehammer that's built to hit a tiny nail... and doesn't even hit the tiny nail correctly every time.
- edem 8y ago
- stadeschuldt 8y agoI am huge fan of Hugo and I use it for my personal blog and some minor websites. Has anyone used Hugo for something other than a blog? I am looking for some stories like using Hugo as a REST-API or anything other more creative similar to this: https://forestry.io/blog/build-a-json-api-with-hugo/ https://forestry.io/blog/build-a-json-api-with-hugo/
- mark212 8y agoI used Hugo 0.12 to build a 2200+ page non-blog website a few years ago, with Disqus commenting. Completely different than a REST api, but the jaw-dropping part was how quickly it all got parsed. Like under 2 seconds. Crazy fast.
- ncphillips 8y agoThat's insane. My <10 page Gatsby site takes 15-20 seconds :/
- mattferderer 8y agoNot necessarily a fair comparison. A bit oranges vs apples there. Most of the Gatsby time is usually doing bundling of css, js, etc with Webpack. I would imagine if you did that with a Hugo site you would run into the initial 15-20 seconds to bundle & then a few seconds to convert all your markdown pages into static HTML pages. That said, I would assume Hugo still wins but not by near as much. So you can argue that Hugo is much faster, if you don't have a use for Webpack on your site. If you don't want the fancy bells & features Gatsby provides, you should for sure pick Hugo over it.
- ncphillips 8y agoGreat point. Hugo does a bit more css processing now, but not nearly as much as Gatsby would.
- sandGorgon 8y agothere is a huge performance rearchitecture going on in Gatsbyjs - https://github.com/gatsbyjs/gatsby/pull/6226/ https://github.com/gatsbyjs/gatsby/pull/6226/ current benchmark: 25000 pages in 32 seconds.
- NickBusey 8y agoHaving my Hugo blog up on GitLab, with their CI/CD pipelines hosting and building my site and on every git push, is pretty great. I am only paying for a domain name and nothing else, and not having to worry about a host going away or shutting down is also pretty nice. Even if GitLab went away tomorrow I could have my site back online in minutes.
- codesections 8y agoI used Hugo for a while, but I feel it's really held back by its templating language. I've recently moved to Gutenberg[0], which is very nearly a clone of Hugo except for the templating language. After some benchmarks[1], I concluded that it's even faster than Hugo, and the ergonomics of using the templating language are far, far better. [0] https://www.getgutenberg.io/ https://www.getgutenberg.io/ [1] https://www.codesections.com/blog/gutenberg-vs-hugo/ https://www.codesections.com/blog/gutenberg-vs-hugo/
- edem 8y agoIt is also held back by its implicit stuff, and counter-intuitive internal logic. Jekyll is infinitely more intuitive. I tried both: went from Jekyll to Hugo, and back and I'd never touch Hugo again. I would also mention that sometimes the Go internals leak and it is also not convenient.
- kaushalmodi 8y ago> but I feel it's really held back by its templating language. That's very subjective. It's templating language is one of the reasons why I use Hugo. It reminds me very much of Lisp ({{ or $foo $bar }}).. parens replaced with double curly braces. Now, everyone doesn't like Lisp :)
- subpixel 8y agoI’ve worked on projects where Hugo was the chosen tool and I may be missing the forest for the trees but when I encountered the templating syntax I considered it a red flag. Like “this is horrendous, but these people seem to just accept it - I wonder what other painful surprises await me down the line?”. And while it’s build-speed is impressive, I’m of the mindset that if your site is large enough that build-speed is a genuine concern, rebuilding your site every time you make a change is a bad idea, and perhaps a dynamic tool is a better fit for the job.