The only reason I'm still using a dynamic blogging engine instead of a static site is that I want to be able to post new articles to my blog, and edit posted articles, using a web browser. The perfect solution, to me, would be a simple site or service with a management interface just like Blogger's or Tumblr's or Posterous's, but that instead of hosting a dynamic blogging engine, simply has a big Commit button that generates a new static copy of the site and writes it to a specified S3 bucket/commits and pushes it as a git repository/whatever else.
Is anyone working on something like this? If not, would anyone else be interested if I scratched this itch?
That's pretty much what I have. My web site is a static wiki. You pull up the plain text in a web form, make your changes, and hit send. That gets sent in an email to the engine that then regenerates the site, figures out what's changed, and uploads the new bits.
I had to do that because 10 years ago I wanted a wiki, but my host couldn't run cgi scripts. I'm still using it because being a totally static site, it's fast. It doesn't have comments or cross-referencing, and I'm starting to look at alternatives, but it only took a couple of days to write.
Having said that, it works for me, but I doubt it would work for anyone else. It's not flashy enough.
My app is pretty similar to what you're describing - you can compose posts online (or in plain text files), and when you're done, it generates a baked (static) version. It's written in PHP, just so you can easily use it on most servers. It's actually pretty close to being done - I can let you know when it's ready.
Isn't this basically the function of moveable type / melody? It's just a big CGI engine that pumps to static content, but is managed pretty much the same way as wordpress UI / concept wise.
I'm working on exactly this but specifically for photoblogs. It will be a hosted service that picks up new photos from a Dropbox directory, generates thumbnails, uploads to S3 and creates a draft post based on the EXIF data. I can then use the web-based admin interface to publish the post on S3 which will do all the heavy lifting of actually serving the blog pages.
Hi all, thank you very much for your so nice feedbacks!
I am really glad since it took quite some time to write, so it's nice to hear people find it useful.
@albedoa, I haven't paginated category pages yet since I don't have that many posts yet, but I think it is possible to do with a plugin that would generate those pages from a custom hash / data set, rather than what Jekyll makes available. I don't know if what I mean is clear but I will look into making an example.
@aw3c2, any web host will be good for Jekyll, since it's just static files that any web server can handle. As long as you are happy with the different workflow, you can switch without any problems. Actually, since your host has PHP you could use it for the contact form, as mentioned in the post.
For anyone interested in using Github to host their Jekyll-based site, you don't even have to install Ruby and Jekyll locally -- just "git push" and Github runs Jekyll server-side and hosts the generated HTML on Github. You can then set up CNAME records so that traffic to yourblog.com is served by github.com. All for the low low price of free:
Hugely impressive piece of work. I migrated a Wordpress blog to Jekyll a few years ago and was surprised how nice it was working with a flat file system.
However, things do tend to get a bit slow when you regenerate large sites, especially if you are using the "related posts" feature.
I also found myself endlessly hacking Rakefiles to generate tag clouds, embed twitter etc etc. You should ask yourself what you want from your blog before jumping off into Jekyll.
This is an incredible and thorough amount of work. The SEO optimization was the next stage of my transition, and I was sort of dreading the research :P Thank you for this. It is invaluable.
I've been looking for an answer to the following question if you have any insight. I have a suspicion that it is not possible without tweaking the code:
For those who want to have some choice in how they write their source content and have the option of pretty math via eg mathjax, the haskell tool hakyll http://hackage.haskell.org/package/hakyll is worth checking out.
you get the full power of pandoc and some other awesome tools in the toolchain, such as (if you like) syntax highlighting for any language, several different ways
of doing templates, a fairly permissive range of input formats coupled with a easy to modify tool for how to take your organizational schema of documents to put together the static site.
It recently had an api rewrite and its become quite nice (i'm in the midst of rewriting my tool chain for its v3 api)
This is awesome! I recently moved my blog from wordpress to jekyll and had to figure most of this stuff out on my own. The hacker in me enjoyed it - but it sure would have been nice to have such a good reference at the time!
Is anyone working on something like this? If not, would anyone else be interested if I scratched this itch?