You should take a look at Hyde as well. I like it a lot more in terms of capabilities. It uses jinja2 for the templating and in my opinion way cooler and more versatile than it's ruby counterpart. Granted my knowledge of python and ruby are pretty general so if you have a preference language-wise you're probably best left to the one that you know the most if you plan to extend things.
Hi Brett.
I'm also using jekyll on my website and blog, but I still have to figure out a smart way of linking to other pages in the blog, i.e. a way to say: create a link to 2011-07-11-title.md, without having to know its "physical" location, /2011/07/title.html
Do you know how to overcome this? For the rest I think jekyll is great and it feeds my (modest, I have to say) needs.
Thanks
Giovanni
I was very skeptical about moving my blog and portfolio to a file based CMS at the beginning. But after having so many problems with hardcoded html in Wordpress posts and several White Screen of Death accidents I decided to try. Together with my friend we hacked a custom solution based on folders, markdown files with metadata tags at the beginning of the file (like @autor or @title) and some php templates. Every time you edit something you just recompile the website and all the data gets cached in one big JSON file. This takes < 1s for 150+ posts. In theory partial updates are possible but we don't have it working yet. Upon a request the JSON file gets loaded and goes through some PHP templates that generate the page. Add Disqus I can easily backup the whole page now, moving my projects to experiments subsection just by copying one folder and write my own plugins (like a Flickr gallery) in 30min. I don't look back.
The biggest concern for giving it into the hands of users is lack of online editing capabilities (could be super easy to do with one ajax form) and the need for managing parallel edits it brings.
Despite my argument against baked blogs a few months ago, I've been thinking about Jekyll a lot. My biggest concerns are
<ol>
<li>How hard is it to maintain your old URLs so links (internal and external) don't break?</li>
<li>How much of one's site gets regenerated with each new post? </li>
<li>How long does it take to regenerate the entire site when you do a redesign?</li>
</ol>
You can specify a permalink that won't change with the filename. Obviously, if you delete a file, you'll be in trouble when you regenerate, but Dropbox, Time Machine and the like make that less of an issue.
Regeneration seems to always be the full site, which makes sense for indexes and sidebars which could appear on every page. My site currently takes about 15 seconds to render the whole thing, unless I'm indexing related posts. Then it takes about 20 minutes to analyze everything.
Design can be a little annoying, but if you create a sandbox copy with just enough posts to fill out your layout, you can turn on a watcher that will render on change and then it only takes a second. Easy enough to script sandbox creation and integration.
Deploy scripting is fun, too :).
While enamored with the idea of using Jekyll and static site rendering in general, I've stuck with Wordpress. It works. Every time I switch blogging platforms I tell myself this time I'm going to stick with it. Then 6 months later I bring it all back into Wordpress and breath a sigh of relief having all those handy bits back.
A simple static site would be great, but I don't want to give up all the niceties Wordpress offers. I've used Tinderbox, Blosxom and all sorts of other methods of static site generation, but it's been mostly just an excuse to do something other than actually posting on my blog, so I quit looking.
Please do follow up on how it goes, though!
I've been a devout WordPress advocate for years, and I'll continue to use it for the same client sites and CMS setups that I always have...
That being said, Jekyll provides me with all of the same capabilities without having to rely on server setups and database performance, etc. It would never do for a client site, but for my personal blog it's perfect. Once you get past the templating and tweaking (which is only as hard as you make it), it really looks like a smooth ride. To each their own, of course, but I'll keep you posted on progress :).