Hacker News new | past | comments | ask | show | jobs | submit login
Tom Preston-Werner: Development of Jekyll to be revived in 2013 (github.com/mojombo)
119 points by parkr on Dec 16, 2012 | hide | past | favorite | 32 comments



A serious alternative to Jekyll is Nanoc[1]. It is absurdly easy to compile any format to another format using a simple 'Rules' file. I for example have pandoc -> HTML with custom syntax highlighting and LaTeX -> pdf on my personal website [2]. Everything is customization and configurable so you can have your own conventions for posts, etc.

[1]: https://github.com/ddfreyne/nanoc [2]: https://github.com/zmanji/zameermanji.com


I have to strongly advise against nanoc and recommend middleman[1] instead.

The problems with nanoc unfortunately only become apparent after you've invested significantly into it and your site starts to grow in complexity and/or size (file-count). I've been there and it wasn't fun at all...

The first problem is the obscure Rules DSL. It feels somewhat elegant in the beginning when you're mostly working of the canned examples. But once you divert from the beaten paths it quickly turns into a hairy mess and you find yourself with a >300 lines rules file, various workarounds tacked into the 'preprocess'-block, a conglomerate of "filters" and "helpers", and a rapidly fading memory of "How did all this fit together again?".

The second problem is performance. If your site contains auto-generated parts (e.g. API-docs) then the number of files may quickly grow into the thousands. Nanoc doesn't cope well at such sizes. In the end the compile-phase took 10 minutes(!) for my ~9k file-project on a beefy machine.

That said, nanoc is okay for smallish projects, just beware the constraints.

Middleman has been a more pleasant experience here (after the porting pains). It's a much more straightforward design. I can come back to it after a month or two and be immediately productive again. With nanoc this always involved a lot of pain re-learning the Rules-magic and interdependencies...

[1] http://middlemanapp.com


I haven't used nanoc much, but I will second the recommendation for middleman. My experience with middleman is that it's one of the rare things that makes simple things easy while scaling well to not-so-simple things. Creating a basic site with a few static pages that share a template is completely painless, and because it's based on Sinatra it's pretty straightforward to use things built for that or Rails when you need to do something not built into middleman.


I've experienced some quirks with nanoc as well, although my site is ultimately simple enough that I don't have to mess with Rules that much. I'd still be interested to try it out. How painful was porting nanoc to middleman?


Do you have any resources for anyone who is porting from jekyll/octopress/nanoc to middleman? Even a short post describing particular porting pains you ran into and how you mitigated them would be great.


Well, I started by first cobbling together a basic middleman "hello world" app and then fleshing it out until I met my legacy app in the middle. There wasn't much straight porting from nanoc (apart from the HTML, JS and CSS) since the ruby-logic doesn't quite translate between the two.

I'd recommend to look at the "community templates" (linked from the MM-site). The "HTML5 Boilerplate"-template had nearly everything covered that I was interested in (I only swapped out 'suzy' for 'less') and since MM is such a simple design it really only took a few hours to feel at home.


I'll second this. I switched from Jekyll to nanoc about a year and a half ago, and I'm very happy with it. I wrote a short piece about extending nanoc (to add categories) that people may find useful[1]. nanoc's own website has good introductory documentation[2], and the Github wiki also has good pages for examples[3] (sites that use nanoc) and samples4] (sites using nanoc with public source code).

[1]: http://ithaca.arpinum.org/2012/03/30/adding-categories.html

[2]: http://nanoc.stoneship.org/docs/

[3]: https://github.com/ddfreyne/nanoc/wiki/Showcase

[4]: https://github.com/ddfreyne/nanoc/wiki/Samples


I love nanoc too, and use it for the GitHub API docs: https://github.com/github/developer.github.com. The fact that it can use ERB templates removes it as a candidate for GitHub Pages, unfortunately. I have a fun rake task to push static HTML to a gh-pages branch: https://github.com/github/developer.github.com/blob/master/R...


Hyde is another alternative (which I use for my website), particularly for those who like Python over Ruby.

http://ringce.com/hyde

https://github.com/hyde/hyde


I'd recommend Pelican over Hyde. It's Python, has great documentation and is actively developed.

http://getpelican.com/

https://github.com/getpelican/pelican


Indeed, pelican is amazing.


Ex-Jekyll and Octopress user, been very happy with nanoc as well here.


Do these work with Github's hosted pages?


If you like Jekyll, check out http://middlemanapp.com/.


Wow that looks fantastic. It's like jekyll, just different. Highly configurable, supports many layout templating engine and well documented. I especially like the i18n part.


another vote for middleman!


I was quite disappointed with Jekyll/Octopress - output was ok, but trying to dig into it was just a rabbits hole - so I started my own tool (still early in dev but I'm going to be working on it over Christmas) - https://npmjs.org/package/hyde


That name is already taken by a Python port of Jekyll, that is actually endorsed by Mojombo. You should probably change it.


Oh bugger - after some though (I wanted to keep the name and command short) I've renamed it 'Nell' - after my dog https://github.com/tanepiper/nell


This is fantastic news. I use Jekyll for many things, but was getting sick of it not supporting fenced code blocks in Markdown.

So I made the classic mistake and built a Node.js Jekyll clone -- there are a few other static site generators in Node, but none used the exact same file structure as Jekyll (unless I missed some, which is entirely possible).

It now handles most Jekyll sites I've tested, including Mojombo's:

https://github.com/fortes/enfield

or

`npm install -g enfield`

Supports plugins as well. Patches welcome!


Well, it looks like Jekyll finally supports fenced code blocks (added in RedCarpet 2) ... my wait is over: https://github.com/mojombo/jekyll/commit/098da3d3fa5b2946afc...


This is great news, yes, but past failure to delegate is evident here.

Also life happens while making other plans.

So I welcome the announcement and I'll be super happy once umpteen long-waiting pull requests are processed.

But somehing tells me, don't hold my breath.


It's in his best interest to stay in the project. He'll have others working on it, and he'll want to ensure that he has some say in the direction of the project.

You're safe to hold your breath. ;)


This is great news, especially given the Github Pages integration with Jekyll. Having a programmer-friendly blog platform without the need to worry about hosting/deployment (easy, but another time consumer) is a good thing.

One thing that Jekyll needs to improve is the process for getting a blog up and running quickly. I turned to Octopress for that (being a Jekyll "framework") but I think it's an function Jekyll itself could provide for.


I'm looking at building my company's CMS workflow with Jekyll so it's good to near this.

I'll have non developers creating and maintaining pages and posts, so I'm hoping I can build an easy workflow with just Jekyll and a bit of prose.io. I've not found any sort of site generator/convertor that's geared for use by non-developers.


I worked at Cornell's College of Agriculture and Life Sciences, in their Communications Dept (Administrative) to completely rewrite http://cals.cornell.edu with Jekyll.

Our workflow included Github, the Github desktop clients, SublimeText 2, and a script we wrote which would run `jekyll --auto --server 3000` so that the person making the changes could ensure that it came out the right way before committing to the repo. Pretty easy stuff.


Super happy. I've made probably half dozen blogs using Octopress/Jekyll. Looking forward to Octopress 2.1, which apparently is stalled: https://github.com/imathis/octopress/branches

Hopefully this'll help spur Octopress dev, too.


Octopress has slowed down due to my need for help with a few things. I've tried working with a few folks, but it hasn't worked out. Now I'm getting the help I need and things are cranking up again. Believing that Jekyll has a future is a great motivator too.


Just wanted to say thanks and keep up the good work!


While I don't currently use jekyll any longer (switched to pelican[1] a while back), it is great to see it being picked up again!

[1]: https://github.com/getpelican/pelican


Is anyone else using scriptogr.am? I love the idea of a static blog, but I don't want to mess with installing and running the software.


As someone who has a pending pull request for Jekyll, I welcome this.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: