Migrating from mephisto to jekyll

Stamped: 2010-08-25 00:00:00 -0400 | Show comments

My life story:

Pfft, I'll save my virtual breath.

I've finally got around to moving my website (this one you're looking at!) to Jekyll. Why? Well, lots of reasons! But, they have already been mentioned numerous times.

However, if you don't know what Jekyll is, I implore you to visit the wiki and learn about it, it's great fun if you're familiar with the terminal in osx, unix, *nix, or just about anything without a super fancy user interface. It lets you:

  • write your posts in Markdown or Textile (or anything you want to extend it to)
  • use plain old css and html
  • host your site anywhere with space, (even mobileme)
  • use git or svn as a naturally way of supporting article revisions, which mephisto did beautifully (I prefer git)

So long demon, it's been... hell.

I came from mephisto, which is dead now, but luckily there is a way to migrate everything (except the tags :() to Jekyll. Comments also! Huzzah! The process is listed there, so I won't rehash what was said.

Boy that sure is a lot of purple.

The design hasn't changed much, only tweaked a little. Let's face it, I'm no amazing designer, I usually hire other people for that. However, I've never found a great way to represent myself, so this will do for now. The important technical bit is that is uses HTML5 and CSS3 (via compass, which is amazing).

In order to maintain compatibility with older browsers, there's something called modernizr, which translates HTML5 elements such as <section> and <article> into something older browsers can deal with. It really is as simple as adding this into your header:

<script src="/javascripts/modernizr-1.5.min.js"></script>

and this into your body tag

<body class="no-js">

You can view my default layout for this site on github, right here. I make liberal use of the newer HTML5 elements (and <video> should I ever need it)!

Articles with name-tags are fun!

I had to re-tag all the articles after migrating, but I also needed a way to support /tag/something here urls. I described this process in a separate post, called Automatically generated tags and tag clouds with Jekyll (multiple word tags allowed). I should probably fire my ghost-writer.

Musings from the peanut gallery.

Comments are a tricky thing since everything is statically generated, hence that whole "you can do this on MobileMe" thing. But as everyone knows by now, disqus is a great way to implement them.

The whole process to implement them is actually a relatively easy one, you just have to use some universal code after making an account from the disqus website to add it in.

Sending tesoriere.com to it's home.

Deployment is relatively easy with a rake task using rsync to send over all that data to wherever. It's really as simple as:

sh 'rsync -rtzh --delete _site/ #{DEPLOY_USER}@#{DEPLOY_HOST}:~/#{domain}/'

Please don't steal me :(

You can view the full source of this entire site on github! It really only takes a couple days to do, and it's worth it if you want to try something new, simple, and I'm sure as hell my hosting company appreciates less load.

tags: jekyll, design, compass
recent entries
Rails — A faster way for next and previous links on a post, article, or any model
The awkward things Siri says
Node.js — Getting oAuth Up and Running Using Express.js and Mongoose
Node.js — Getting oAuth Up and Running Using Express.js, Railway.js and Mongoose
Migrating from Rails 3.1 RC4 to RC5 using Heroku's Cedar Stack (also compass, unicorn, and sendgrid)
Random Freeze Fix for GTX 460 in 10.6 (osx86)
Wasted on Steam - an analytic tool for the Steam platform
Rails 3.1 — SQL logging to STDOUT during testing (with rspec, test::unit, or cucumber)
Rails 3.1 — Using ERB/HAML/etc within a Coffeescript JS file
Rails 3.1 — 'load_missing_contant': Expected ... to define ... (LoadError)
View the entire archive of articles